20 lastShowClassFirst showMethodInheritance lastMethodClass |
20 lastShowClassFirst showMethodInheritance lastMethodClass |
21 lastMethodClassesSubclasses |
21 lastMethodClassesSubclasses |
22 classAndSelectorsRedefinedBySubclassesOfClass showClass |
22 classAndSelectorsRedefinedBySubclassesOfClass showClass |
23 showMethodComplexity showMethodTypeIcon |
23 showMethodComplexity showMethodTypeIcon |
24 showImageResourceMethodsImages showSyntheticMethods |
24 showImageResourceMethodsImages showSyntheticMethods |
25 showNameFilterHolder nameFilterPatternHolder' |
25 showNameFilterHolder nameFilterPatternHolder nameFilterTypeHolder' |
26 classVariableNames:'ShowComplexityValue' |
26 classVariableNames:'ShowComplexityValue' |
27 poolDictionaries:'' |
27 poolDictionaries:'' |
28 category:'Interface-Browsers-New' |
28 category:'Interface-Browsers-New' |
29 ! |
29 ! |
30 |
30 |
120 <resource: #canvas> |
120 <resource: #canvas> |
121 |
121 |
122 ^ |
122 ^ |
123 #(FullSpec |
123 #(FullSpec |
124 name: windowSpec |
124 name: windowSpec |
|
125 uuid: '0ad3c35c-d1ce-11e7-900e-c42c033b4871' |
125 window: |
126 window: |
126 (WindowSpec |
127 (WindowSpec |
127 label: 'SelectorList' |
128 label: 'SelectorList' |
128 name: 'SelectorList' |
129 name: 'SelectorList' |
|
130 uuid: '0ad3c6f4-d1ce-11e7-900e-c42c033b4871' |
129 min: (Point 0 0) |
131 min: (Point 0 0) |
130 bounds: (Rectangle 0 0 300 300) |
132 bounds: (Rectangle 0 0 300 300) |
131 ) |
133 ) |
132 component: |
134 component: |
133 (SpecCollection |
135 (SpecCollection |
134 collection: ( |
136 collection: ( |
135 (VerticalPanelViewSpec |
137 (VerticalPanelViewSpec |
136 name: 'VerticalPanel1' |
138 name: 'VerticalPanel1' |
137 layout: (LayoutFrame 0 0 0 0 0 1 0 1) |
139 layout: (LayoutFrame 0 0 0 0 0 1 0 1) |
|
140 uuid: '0ad3c974-d1ce-11e7-900e-c42c033b4871' |
138 horizontalLayout: fit |
141 horizontalLayout: fit |
139 verticalLayout: topFit |
142 verticalLayout: topFit |
140 horizontalSpace: 3 |
143 horizontalSpace: 3 |
141 verticalSpace: 3 |
144 verticalSpace: 3 |
142 component: |
145 component: |
143 (SpecCollection |
146 (SpecCollection |
144 collection: ( |
147 collection: ( |
145 (HorizontalPanelViewSpec |
148 (HorizontalPanelViewSpec |
146 name: 'HorizontalPanel1' |
149 name: 'HorizontalPanel1' |
147 activeHelpKey: selectorNameFilter |
150 activeHelpKey: selectorNameFilter |
|
151 uuid: '0ad3ccb2-d1ce-11e7-900e-c42c033b4871' |
148 visibilityChannel: showSelectorNameFilter |
152 visibilityChannel: showSelectorNameFilter |
149 horizontalLayout: leftFit |
153 horizontalLayout: leftFit |
150 verticalLayout: center |
154 verticalLayout: center |
151 component: |
155 component: |
152 (SpecCollection |
156 (SpecCollection |
153 collection: ( |
157 collection: ( |
154 (ActionButtonSpec |
158 (ActionButtonSpec |
155 label: 'hideNameFilterIcon' |
159 label: 'hideNameFilterIcon' |
156 name: 'Button1' |
160 name: 'Button1' |
157 activeHelpKey: hideSelectorNameFilter |
161 activeHelpKey: hideSelectorNameFilter |
|
162 uuid: '0ad3ce6a-d1ce-11e7-900e-c42c033b4871' |
158 hasCharacterOrientedLabel: false |
163 hasCharacterOrientedLabel: false |
159 translateLabel: false |
164 translateLabel: false |
160 model: hideSelectorNameFilter |
165 model: hideSelectorNameFilter |
161 extent: (Point 16 22) |
166 extent: (Point 16 22) |
162 usePreferredWidth: true |
167 usePreferredWidth: true |
163 ) |
168 ) |
164 (LabelSpec |
169 (LabelSpec |
165 label: 'Filter:' |
170 label: 'Filter:' |
166 name: 'Label1' |
171 name: 'Label1' |
|
172 uuid: '0ad3d0cc-d1ce-11e7-900e-c42c033b4871' |
167 translateLabel: true |
173 translateLabel: true |
168 adjust: right |
174 adjust: right |
169 extent: (Point 46 24) |
175 extent: (Point 51 24) |
170 usePreferredWidth: true |
176 usePreferredWidth: true |
171 ) |
177 ) |
172 (InputFieldSpec |
178 (HorizontalPanelViewSpec |
173 name: 'EntryField1' |
179 name: 'HorizontalPanel2' |
174 model: nameFilterPatternHolder |
180 uuid: '0ad3d25c-d1ce-11e7-900e-c42c033b4871' |
175 immediateAccept: true |
181 horizontalLayout: rightFit |
176 acceptOnReturn: true |
182 verticalLayout: center |
177 acceptOnTab: true |
183 horizontalSpace: 3 |
178 acceptOnPointerLeave: true |
184 verticalSpace: 3 |
179 extent: (Point 228 25) |
185 component: |
|
186 (SpecCollection |
|
187 collection: ( |
|
188 (InputFieldSpec |
|
189 name: 'EntryField1' |
|
190 uuid: '0ad3d374-d1ce-11e7-900e-c42c033b4871' |
|
191 model: nameFilterPatternHolder |
|
192 immediateAccept: true |
|
193 acceptOnReturn: true |
|
194 acceptOnTab: true |
|
195 acceptOnPointerLeave: true |
|
196 extent: (Point 180 26) |
|
197 ) |
|
198 (ComboListSpec |
|
199 name: 'ComboList1' |
|
200 uuid: '0ad3d608-d1ce-11e7-900e-c42c033b4871' |
|
201 model: nameFilterTypeHolder |
|
202 activeHelpKey: nameFilterType |
|
203 comboList: |
|
204 (ImmutableArray |
|
205 'T' 'S' |
|
206 ) |
|
207 useIndex: false |
|
208 extent: (Point 40 20) |
|
209 ) |
|
210 ) |
|
211 |
|
212 ) |
|
213 extent: (Point 225 30) |
180 ) |
214 ) |
181 ) |
215 ) |
182 |
216 |
183 ) |
217 ) |
184 extent: (Point 300 30) |
218 extent: (Point 300 30) |
185 ) |
219 ) |
186 (SequenceViewSpec |
220 (SequenceViewSpec |
187 name: 'List' |
221 name: 'List' |
|
222 uuid: '0ad3d842-d1ce-11e7-900e-c42c033b4871' |
188 tabable: true |
223 tabable: true |
189 model: selectedMethodNameIndices |
224 model: selectedMethodNameIndices |
190 menu: menuHolder |
225 menu: menuHolder |
191 hasHorizontalScrollBar: true |
226 hasHorizontalScrollBar: true |
192 hasVerticalScrollBar: true |
227 hasVerticalScrollBar: true |
304 nameFilterPatternHolder addDependent:self |
341 nameFilterPatternHolder addDependent:self |
305 ]. |
342 ]. |
306 ^ nameFilterPatternHolder |
343 ^ nameFilterPatternHolder |
307 |
344 |
308 "Created: / 09-11-2017 / 20:51:04 / cg" |
345 "Created: / 09-11-2017 / 20:51:04 / cg" |
|
346 ! |
|
347 |
|
348 nameFilterTypeHolder |
|
349 nameFilterTypeHolder isNil ifTrue:[ |
|
350 nameFilterTypeHolder := 'S' asValue. |
|
351 nameFilterTypeHolder addDependent:self |
|
352 ]. |
|
353 ^ nameFilterTypeHolder |
|
354 |
|
355 "Created: / 25-11-2017 / 11:51:08 / cg" |
309 ! |
356 ! |
310 |
357 |
311 selectedMethodNameIndices |
358 selectedMethodNameIndices |
312 selectedMethodNameIndices isNil ifTrue:[ |
359 selectedMethodNameIndices isNil ifTrue:[ |
313 selectedMethodNameIndices := ValueHolder new. |
360 selectedMethodNameIndices := ValueHolder new. |
1041 ]. |
1088 ]. |
1042 changedObject == nameFilterPatternHolder ifTrue:[ |
1089 changedObject == nameFilterPatternHolder ifTrue:[ |
1043 self nameFilter:(nameFilterPatternHolder value). |
1090 self nameFilter:(nameFilterPatternHolder value). |
1044 ^ self. |
1091 ^ self. |
1045 ]. |
1092 ]. |
|
1093 changedObject == nameFilterTypeHolder ifTrue:[ |
|
1094 self enqueueDelayedUpdateList. |
|
1095 ^ self. |
|
1096 ]. |
1046 |
1097 |
1047 super update:something with:aParameter from:changedObject |
1098 super update:something with:aParameter from:changedObject |
1048 |
1099 |
1049 "Modified: / 17-04-2014 / 21:48:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1100 "Modified: / 17-04-2014 / 21:48:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1050 "Modified (comment): / 09-11-2017 / 21:05:27 / cg" |
1101 "Modified: / 25-11-2017 / 11:58:58 / cg" |
1051 ! ! |
1102 ! ! |
1052 |
1103 |
1053 !MethodList methodsFor:'drag & drop'! |
1104 !MethodList methodsFor:'drag & drop'! |
1054 |
1105 |
1055 canDropContext:aDropContext |
1106 canDropContext:aDropContext |
1147 ^ false |
1198 ^ false |
1148 |
1199 |
1149 "Created: / 17-08-2011 / 15:03:34 / cg" |
1200 "Created: / 17-08-2011 / 15:03:34 / cg" |
1150 ! |
1201 ! |
1151 |
1202 |
|
1203 isNameFilterMatchingSelector:sel method:mthd |
|
1204 sel isNil ifTrue:[^ true]. |
|
1205 nameFilter isEmptyOrNil ifTrue:[^ true]. |
|
1206 nameFilter = '*' ifTrue:[^ true]. |
|
1207 |
|
1208 nameFilterTypeHolder value = 'S' ifTrue:[ |
|
1209 ^ (nameFilter includesMatchCharacters not and:[sel includesString:nameFilter caseSensitive:false]) |
|
1210 or:[ nameFilter match:sel caseSensitive:false] |
|
1211 ]. |
|
1212 nameFilter includesMatchCharacters ifTrue:[ |
|
1213 ^ mthd source asCollectionOfWords contains:[:word | nameFilter match:word caseSensitive:false] |
|
1214 ] ifFalse:[ |
|
1215 ^ mthd source includesString:nameFilter |
|
1216 ]. |
|
1217 |
|
1218 "Created: / 25-11-2017 / 12:04:21 / cg" |
|
1219 ! |
|
1220 |
1152 listOfMethodNames |
1221 listOfMethodNames |
1153 |methods entries selectorBag newNameList allClasses newClasses |
1222 |methods entries selectorBag newNameList allClasses newClasses |
1154 allCategories "allSelectors" |
1223 allCategories "allSelectors" |
1155 generator doShowClass doShowClassFirst doShowCategory enforceClassAndProtocolInList |
1224 generator doShowClass doShowClassFirst doShowCategory enforceClassAndProtocolInList |
1156 theMethod sortByClass anyMethodToWatch mclass |
1225 theMethod sortByClass anyMethodToWatch mclass |
1194 |categoryIsExtensionsPseudoCategory| |
1263 |categoryIsExtensionsPseudoCategory| |
1195 |
1264 |
1196 (sel isNil |
1265 (sel isNil |
1197 or:[ nameFilter isEmptyOrNil |
1266 or:[ nameFilter isEmptyOrNil |
1198 or:[ nameFilter = '*' |
1267 or:[ nameFilter = '*' |
1199 or:[ (nameFilter includesMatchCharacters not and:[sel includesString:nameFilter caseSensitive:false]) |
1268 or:[ self isNameFilterMatchingSelector:sel method:mthd]]]) ifTrue:[ |
1200 or:[ nameFilter match:sel caseSensitive:false]]]]) ifTrue:[ |
|
1201 |
1269 |
1202 categoryIsExtensionsPseudoCategory := (cat = nameListEntryForExtensions). |
1270 categoryIsExtensionsPseudoCategory := (cat = nameListEntryForExtensions). |
1203 (cls isNil and:[ cat isNil and:[ sel isNil ] ]) ifTrue:[ |
1271 (cls isNil and:[ cat isNil and:[ sel isNil ] ]) ifTrue:[ |
1204 enforceClassAndProtocolInList := true |
1272 enforceClassAndProtocolInList := true |
1205 ] ifFalse:[ |
1273 ] ifFalse:[ |
1723 ! ! |
1791 ! ! |
1724 |
1792 |
1725 !MethodList methodsFor:'private-presentation'! |
1793 !MethodList methodsFor:'private-presentation'! |
1726 |
1794 |
1727 colorForCoverageInformationOfMethod:aMethod |
1795 colorForCoverageInformationOfMethod:aMethod |
|
1796 |prefs| |
|
1797 |
1728 aMethod isInstrumented ifFalse:[^ nil]. |
1798 aMethod isInstrumented ifFalse:[^ nil]. |
1729 aMethod category = 'documentation' ifTrue:[^ nil]. |
1799 aMethod category = 'documentation' ifTrue:[^ nil]. |
1730 |
1800 |
|
1801 prefs := UserPreferences current. |
|
1802 |
1731 aMethod hasBeenCalled ifTrue:[ |
1803 aMethod hasBeenCalled ifTrue:[ |
1732 aMethod haveAllBlocksBeenExecuted ifTrue:[ |
1804 aMethod haveAllBlocksBeenExecuted ifTrue:[ |
1733 ^ UserPreferences current colorForInstrumentedFullyCoveredCode |
1805 ^ prefs colorForInstrumentedFullyCoveredCode |
1734 ]. |
1806 ]. |
1735 ^ UserPreferences current colorForInstrumentedPartiallyCoveredCode |
1807 ^ prefs colorForInstrumentedPartiallyCoveredCode |
1736 ]. |
1808 ]. |
1737 ^ UserPreferences current colorForInstrumentedNeverCalledCode |
1809 ^ prefs colorForInstrumentedNeverCalledCode |
1738 |
1810 |
1739 "Created: / 30-04-2010 / 11:53:38 / cg" |
1811 "Created: / 30-04-2010 / 11:53:38 / cg" |
|
1812 "Modified: / 25-11-2017 / 12:07:10 / cg" |
1740 ! |
1813 ! |
1741 |
1814 |
1742 listEntryForMethod:aMethod selector:selector class:cls showClass:showClass showCategory:showCategory classFirst:showClassFirst |
1815 listEntryForMethod:aMethod selector:selector class:cls showClass:showClass showCategory:showCategory classFirst:showClassFirst |
1743 "answer a method list entry |
1816 "answer a method list entry |
1744 gimmics: |
1817 gimmics: |
2018 |
2091 |
2019 super postBuildWith:aBuilder. |
2092 super postBuildWith:aBuilder. |
2020 |
2093 |
2021 methodListView := aBuilder componentAt:'List'. |
2094 methodListView := aBuilder componentAt:'List'. |
2022 methodListView notNil ifTrue:[ |
2095 methodListView notNil ifTrue:[ |
2023 methodListView allowDrag:true. |
2096 methodListView allowDrag:true. |
2024 methodListView dragObjectConverter:[:obj | |
2097 methodListView |
2025 |nm method idx| |
2098 dragObjectConverter:[:obj | |
2026 |
2099 |nm method idx| |
2027 nm := obj theObject asString string string. |
2100 |
2028 idx := browserNameList value findFirst:[:item | item string string = nm]. |
2101 nm := obj theObject asString string string. |
2029 method := methodList value at:idx. |
2102 idx := browserNameList value findFirst:[:item | item string string = nm]. |
2030 DropObject newMethod:method. |
2103 method := methodList value at:idx. |
2031 ]. |
2104 DropObject newMethod:method. |
|
2105 ]. |
2032 ] |
2106 ] |
|
2107 |
|
2108 "Modified (format): / 25-11-2017 / 12:08:30 / cg" |
2033 ! ! |
2109 ! ! |
2034 |
2110 |
2035 !MethodList class methodsFor:'documentation'! |
2111 !MethodList class methodsFor:'documentation'! |
2036 |
2112 |
2037 version |
2113 version |