Skip to content

Commit 0438768

Browse files
authored
Merge pull request #1772 from pharo-spec/dev-3.0
last minute changes
2 parents fe14d6d + b23c955 commit 0438768

11 files changed

Lines changed: 97 additions & 30 deletions

src/Spec2-Adapters-Morphic/SpNotebookPageMorph.class.st

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ SpNotebookPageMorph >> reset [
8080
SpNotebookPageMorph >> themeChanged [
8181

8282
super themeChanged.
83-
labelMorph themeChanged.
83+
labelMorph ifNotNil: [ :aMorph | aMorph themeChanged ].
8484
actualPageMorph ifNotNil: [
8585
actualPageMorph themeChanged ]
8686
]
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
Extension { #name : 'CmUICommand' }
2+
3+
{ #category : '*Spec2-Commander2' }
4+
CmUICommand >> id [
5+
6+
^ String streamContents: [ :stream |
7+
| parts name |
8+
9+
name := self name
10+
ifNil: [
11+
self shortcutKey
12+
ifNotNil: [ 'shortcut ', (KMShortcutPrinter toString: self shortcutKey) ]
13+
ifNil: [ 'unknown' ] ].
14+
parts := name substrings.
15+
stream << parts first asLowercase.
16+
parts allButFirstDo: [ :each | stream << each capitalized ] ]
17+
]

src/Spec2-Commander2/SpCommand.class.st

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -121,22 +121,6 @@ SpCommand >> iconProvider [
121121
^ iconProvider
122122
]
123123

124-
{ #category : 'private' }
125-
SpCommand >> id [
126-
127-
^ String streamContents: [ :stream |
128-
| parts name |
129-
130-
name := self name
131-
ifNil: [
132-
self shortcutKey
133-
ifNotNil: [ 'shortcut ', (KMShortcutPrinter toString: self shortcutKey) ]
134-
ifNil: [ 'unknown' ] ].
135-
parts := name substrings.
136-
stream << parts first asLowercase.
137-
parts allButFirstDo: [ :each | stream << each capitalized ] ]
138-
]
139-
140124
{ #category : 'initialization' }
141125
SpCommand >> initialize [
142126

src/Spec2-CommonWidgets/SpFilteringListPresenter.class.st

Lines changed: 44 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,18 @@ SpFilteringListPresenter >> applyFilter: aString [
6565
self filterInputPresenter text: aString
6666
]
6767

68+
{ #category : 'api' }
69+
SpFilteringListPresenter >> beMultipleSelection [
70+
71+
listPresenter beMultipleSelection
72+
]
73+
74+
{ #category : 'api' }
75+
SpFilteringListPresenter >> beSingleSelection [
76+
77+
listPresenter beSingleSelection
78+
]
79+
6880
{ #category : 'initialization' }
6981
SpFilteringListPresenter >> connectPresenters [
7082

@@ -150,13 +162,16 @@ SpFilteringListPresenter >> headerTitle: aString [
150162

151163
{ #category : 'initialization' }
152164
SpFilteringListPresenter >> initializePresenters [
165+
self addStyle: 'filteringList'.
153166

154167
filterInputPresenter := self newTextInput
155-
placeholder: 'Filter...';
156-
yourself.
168+
addStyle: 'flat';
169+
placeholder: 'Filter...';
170+
yourself.
157171
listPresenter := self newListToFilter.
158-
unfilteredItems := #( ).
159-
self matchSubstring
172+
unfilteredItems := #().
173+
itemFilterBlock ifNil: [
174+
self matchSubstring ]
160175
]
161176

162177
{ #category : 'transmission' }
@@ -207,13 +222,13 @@ SpFilteringListPresenter >> matchBeginOfString [
207222
SpFilteringListPresenter >> matchSubstring [
208223

209224
itemFilterBlock := [ :each :pattern |
210-
each asLowercase includesSubstring: pattern asLowercase ]
225+
each asLowercase includesSubstring: pattern asLowercase ]
211226
]
212227

213228
{ #category : 'initialization' }
214229
SpFilteringListPresenter >> newListToFilter [
215230

216-
^ self newList
231+
^ self newEasyListView
217232
]
218233

219234
{ #category : 'transmission' }
@@ -241,6 +256,15 @@ SpFilteringListPresenter >> resetFilter [
241256
self applyFilter: ''
242257
]
243258

259+
{ #category : 'api' }
260+
SpFilteringListPresenter >> rowPresenterClass: aPresenterClass [
261+
"Selecting a presenter class will override #display: and #displayIcon: selectors.
262+
NOTICE that the #display: will still be used to filter, so you need to define it
263+
anyway"
264+
265+
listPresenter rowPresenterClass: aPresenterClass
266+
]
267+
244268
{ #category : 'api - selection' }
245269
SpFilteringListPresenter >> selectIndex: aNumber scrollToSelection: aBoolean [
246270

@@ -289,6 +313,20 @@ SpFilteringListPresenter >> unfilteredItems: someItems [
289313
unfilteredItems := someItems
290314
]
291315

316+
{ #category : 'api - selection' }
317+
SpFilteringListPresenter >> unselectAll [
318+
319+
listPresenter unselectAll
320+
]
321+
322+
{ #category : 'api' }
323+
SpFilteringListPresenter >> updateItemsKeepingSelection: aCollection [
324+
325+
listPresenter updateItemsKeepingSelection: aCollection.
326+
unfilteredItems := aCollection.
327+
self reapplyOrResetFilter
328+
]
329+
292330
{ #category : 'api - events' }
293331
SpFilteringListPresenter >> whenSelectionChangedDo: aBlock [
294332

src/Spec2-Core/SpLocationIconProvider.class.st

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ SpLocationIconProvider >> inspectionIcons: aBuilder [
7070
<inspectorPresentationOrder: 0 title: 'Icons'>
7171

7272
^ aBuilder newList
73+
addStyle: 'stList';
7374
items: (icons associations sorted: [ :a :b | a key < b key ]);
7475
displayIcon: [ :each | each value ];
7576
display: [ :each | each key ];

src/Spec2-Core/SpPresenter.class.st

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -690,6 +690,7 @@ SpPresenter >> inspectionSubPresenters: aBuilder [
690690
<inspectorPresentationOrder: 910 title: 'Subpresenters'>
691691

692692
^ aBuilder newTree
693+
addStyle: 'stTree';
693694
roots: self presenters;
694695
children: [ :each | each presenters ];
695696
expandRoots;

src/Spec2-Examples/SpBoxLayout.extension.st

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ SpBoxLayout class >> exampleAddLast [
88
presenter layout: (self newTopToBottom
99
add: 'Enter text' expand: false;
1010
add: presenter newTextInput expand: false;
11-
addLast: (presenter newButton label: 'Ok') expand: false;
11+
add: (SpBoxLayout newTopToBottom
12+
vAlignEnd;
13+
add: presenter newButton label: 'Ok';
14+
yourself)
15+
expand: false;
1216
yourself).
1317

1418
presenter open
@@ -43,8 +47,9 @@ SpBoxLayout class >> exampleBorderWidth [
4347
add: 'Enter text' expand: false;
4448
add: presenter newTextInput expand: false;
4549
addLast: (self newLeftToRight
46-
addLast: (presenter newButton label: 'Ok') expand: false;
47-
addLast: (presenter newButton label: 'Cancel') expand: false;
50+
hAlignEnd;
51+
add: (presenter newButton label: 'Ok') expand: false;
52+
add: (presenter newButton label: 'Cancel') expand: false;
4853
yourself)
4954
expand: false;
5055
yourself).

src/Spec2-Examples/SpDemoActionBarPresenter.class.st

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ SpDemoActionBarPresenter >> defaultLayout [
1818

1919
^ SpBoxLayout newTopToBottom
2020
add: text;
21-
addLast: actionBar expand: false;
21+
add: actionBar expand: false;
2222
yourself
2323
]
2424

src/Spec2-ListView/SpAbstractEasyListViewPresenter.class.st

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,12 @@ SpAbstractEasyListViewPresenter >> removeScrollBarStyle: aStyle [
101101
^ contentView removeScrollBarStyle: aStyle
102102
]
103103

104+
{ #category : 'initialization' }
105+
SpAbstractEasyListViewPresenter >> resetListSelection [
106+
107+
self selectIndex: 0
108+
]
109+
104110
{ #category : 'api' }
105111
SpAbstractEasyListViewPresenter >> scrollBarStyles [
106112

@@ -131,6 +137,12 @@ SpAbstractEasyListViewPresenter >> selectIndex: anInteger [
131137
contentView selectIndex: anInteger
132138
]
133139

140+
{ #category : 'api - selection' }
141+
SpAbstractEasyListViewPresenter >> selectIndexes: anArray [
142+
143+
contentView selectIndexes: anArray
144+
]
145+
134146
{ #category : 'api - selection' }
135147
SpAbstractEasyListViewPresenter >> selectItem: anObject [
136148

@@ -145,6 +157,12 @@ SpAbstractEasyListViewPresenter >> selectItem: anObject scrollToSelection: aBool
145157
scrollToSelection: aBoolean
146158
]
147159

160+
{ #category : 'api - selection' }
161+
SpAbstractEasyListViewPresenter >> selectItems: anArray [
162+
163+
contentView selectItems: anArray
164+
]
165+
148166
{ #category : 'api - selection' }
149167
SpAbstractEasyListViewPresenter >> selectedIndex [
150168

src/Spec2-ListView/SpEasyListRowPresenter.class.st

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ SpEasyListRowPresenter >> updatePresenter [
5757
self model ifNil: [ ^ self ].
5858

5959
self listView hasIcons
60-
ifTrue: [ iconPresenter image: (self listView displayIcon value: self model) ].
60+
ifTrue: [ iconPresenter image: (self listView displayIcon cull: self model) ].
6161
textPresenter label: (self listView display value: self model)
6262
]
6363

0 commit comments

Comments
 (0)