Christoph Thiede uploaded a new version of HelpSystem-Core to project The Trunk: http://source.squeak.org/trunk/HelpSystem-Core-ct.143.mcz
==================== Summary ====================
Name: HelpSystem-Core-ct.143 Author: ct Time: 18 August 2023, 12:32:57.339041 am UUID: e8fa3f5f-0f7a-f747-a9c9-d978156280fa Ancestors: HelpSystem-Core-mt.142
Slightly refactors SearchTopic by extracting some methods. This makes it possible to customize search in subclasses by overriding #doSearch and #writeResultText (which I am doing in another project).
=============== Diff against HelpSystem-Core-mt.142 ===============
Item was added: + ----- Method: SearchTopic>>doSearch (in category 'private') ----- + doSearch + + (self topicsToSearch + sorted: [:t1 :t2 | t1 priorityForSearch <= t2 priorityForSearch]) + do: [:topic | + | nestedResults | + nestedResults := OrderedCollection new. + self mutex critical: [results add: topic -> nestedResults]. + self find: self term in: {topic} results: nestedResults]. + + results add: 'Search finished.'.!
Item was changed: ----- Method: SearchTopic>>startSearch (in category 'private') ----- startSearch
self stopSearch. results := OrderedCollection new. self topicsToSearch ifEmpty: [ self changed: #contents. ^ self]. process := [ + self doSearch. - (self topicsToSearch - sorted: [:t1 :t2 | t1 priorityForSearch <= t2 priorityForSearch]) - do: [:topic | - | nestedResults | - nestedResults := OrderedCollection new. - self mutex critical: [results add: topic -> nestedResults]. - self find: self term in: {topic} results: nestedResults]. - results add: 'Search finished.'. self triggerUpdateContents. ] forkAt: 35.!
Item was changed: ----- Method: SearchTopic>>updateResultText (in category 'private') ----- updateResultText
resultText := '' asText. self mutex critical: [ + self writeResultText]. - results ifNil: [^ resultText]. - results do: [:topicToResult | - topicToResult isString - ifTrue: [resultText append: ( - (topicToResult, String cr) asText - addAttribute: (TextColor color: (Color gray: 0.7)); - yourself)] - ifFalse: [ - resultText append: ( - ('----- Matches found in ''', topicToResult key title, ''' -----\') withCRs asText - addAttribute: (TextColor color: (Color gray: 0.7))). - topicToResult value do: [:entry | - resultText append: (self printResultEntry: entry)] - ]]]. ^ resultText!
Item was added: + ----- Method: SearchTopic>>writeResultText (in category 'private') ----- + writeResultText + + results ifNil: [^ resultText]. + results do: [:topicToResult | + topicToResult isString + ifTrue: [resultText append: ( + (topicToResult, String cr) asText + addAttribute: (TextColor color: (Color gray: 0.7)); + yourself)] + ifFalse: [ + resultText append: ( + ('----- Matches found in ''', topicToResult key title, ''' -----\') withCRs asText + addAttribute: (TextColor color: (Color gray: 0.7))). + topicToResult value do: [:entry | + resultText append: (self printResultEntry: entry)] + ]]!
packages@lists.squeakfoundation.org