Tools__ChangeList.st
changeset 10925 7cb47ef997fb
parent 10881 07359595b386
child 10957 53571e562d5e
--- a/Tools__ChangeList.st	Tue Nov 29 20:24:14 2011 +0100
+++ b/Tools__ChangeList.st	Tue Nov 29 20:25:07 2011 +0100
@@ -27,9 +27,8 @@
 
 "{ NameSpace: Tools }"
 
-BrowserList subclass:#ChangeList
-	instanceVariableNames:'listHolder listView showRemovedHolder showSameHolder
-		acceptEnabledHolder'
+BrowserListWithFilter subclass:#ChangeList
+	instanceVariableNames:'listHolder showRemovedHolder showSameHolder acceptEnabledHolder'
 	classVariableNames:'LastSelectionConditionString'
 	poolDictionaries:''
 	category:'Interface-Browsers-ChangeSet'
@@ -144,7 +143,7 @@
               name: 'List'
               layout: (LayoutFrame 0 0 0 0 0 1 0 1)
               model: selectionHolder
-              menu: menuHolder
+              menu: menuHolderWithShowFilter
               hasHorizontalScrollBar: true
               hasVerticalScrollBar: true
               listModel: listHolder
@@ -152,12 +151,29 @@
               useIndex: false
               highlightMode: line
               doubleClickSelector: selectionDoubleclicked
-              postBuildCallback: postBuildList:
+              postBuildCallback: postBuildListView:
+            )
+           (InputFieldSpec
+              name: 'Filter'
+              layout: (LayoutFrame 0 0 0 0 0 1 26 0)
+              initiallyInvisible: true
+              model: filterPatternHolder
+              immediateAccept: true
+              acceptOnLeave: false
+              acceptOnReturn: false
+              acceptOnTab: false
+              acceptOnPointerLeave: false
+              emptyFieldReplacementText: 'Search Filter...'
+              usePreferredHeight: true
+              useDynamicPreferredHeight: true
+              postBuildCallback: postBuildFilterView:
             )
            )
          
         )
       )
+
+    "Modified: / 29-11-2011 / 15:52:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList class methodsFor:'menu specs'!
@@ -301,7 +317,6 @@
         #showSameHolder
       ).
 
-    "Modified: / 04-08-2011 / 18:42:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'accessing'!
@@ -499,12 +514,12 @@
 
 !ChangeList methodsFor:'hooks'!
 
-postBuildList: aView
+postBuildListView: aView
 
-    listView := aView scrolledView.
+    super postBuildListView: aView.
     listView delegate: self.
 
-    "Created: / 08-12-2009 / 14:10:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Created: / 29-11-2011 / 14:56:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'initialization'!
@@ -714,19 +729,21 @@
 !
 
 updateList
-    |inGenerator changeset|
+    |inGenerator changeset newList |
 
     inGenerator := self inGeneratorHolder value.
     changeset := inGenerator ifNil:[ #() ] ifNotNil:[ inGenerator ].
-    self listHolder value:(changeset 
+    newList := changeset 
                 select:
                     [:chg | 
                     (self showRemovedHolder value or:[ chg removed not ])
                         and:[self showSameHolder value or:[chg delta ~~ #=]]
-                    ]
-                thenCollect:[:chg | self listEntryFor:chg ])
+                    ].
+    newList := self filterList: newList.
+    newList := newList collect:[:chg | self listEntryFor:chg ].
+    self listHolder value: newList.
 
-    "Modified: / 04-08-2011 / 19:07:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 29-11-2011 / 15:38:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'queries'!
@@ -953,11 +970,11 @@
 !ChangeList class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.7 2011-11-18 14:07:05 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.8 2011-11-29 19:25:07 vrany Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.7 2011-11-18 14:07:05 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.8 2011-11-29 19:25:07 vrany Exp $'
 !
 
 version_SVN