Hi all,
i'm new (first post) and my english is very poor so please don't blame me :). I would like to use Spec for display a collection of domain objects and i would like to specify the layout which apply to each items, not just display a String or a Text like "ListModel>>displayBlock:" but a more complexe layout with rows, columns and images within (for example). To illustrate, an equivalent would be the component ListView in Android. I turn to you to know if it's possible to do that with Spec. Thanks, Regards, Glenn
Glenn Cavarlé
|
I think the widget to look at is TreeModel :)
Do you have an image showing what you would like?
Ben On 05 Feb 2014, at 00:58, Glenn Cavarlé <[hidden email]> wrote: Hi all, |
Thanks for your reply,
I haven't an image but google yes :) An example with Android ListView: http://www.codelearn.org/android-tutorial/assets/list_view/list-view-example-1-95973c43c6eed64af57c7e050981966b.jpg TreeModel to make a list? I look at it. Thanks, Glenn
Glenn Cavarlé
|
In reply to this post by Glenn Cavarlé
> Hi all, > i'm new (first post) and my english is very poor so please don't blame me > :). same as ours :) and we do not care so welcome and do not hesitate to ask question and have fun with us and pharo :) > I would like to use Spec for display a collection of domain objects and i > would like to specify the layout which apply to each items, > not just display a String or a Text like "ListModel>>displayBlock:" but a > more complexe layout with rows, columns and images within (for example). > To illustrate, an equivalent would be the component ListView in Android. > > I turn to you to know if it's possible to do that with Spec. > Thanks, > > > Regards, > Glenn > > > > ----- > Glenn Cavarlé > -- > View this message in context: http://forum.world.st/Spec-question-tp4741608.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > |
In reply to this post by Benjamin Van Ryseghem (Pharo)
Hi,
I have looked at the TreeModel class and it's not exactly that i seek. The idea is rather something like that : MyListModel>>initializeWidgets title := self newLabel. manager := self newListManager. manager model:#MyDummyItemModel MyListModel class>>defaultSpec ^SpecLayout composed newColumn:[:mainCol| mainCol add: #title; add: #manager ]; yourself MyDummyItemModel>>initializeWidgets image := self newImage. address := self newLabel. zipCode := self newLabel. city := self newLabel. editBtn := self newButton. delBtn := self newButton. MyDummyItemModel class>>defaultSpec: ^SpecLayout composed newRow:[:mainRow| mainRow add: #image; newColumn:[:addrCol| addrCol add: #address; add: #zipCode; add: #city ]; newColumn:[:btnCol| btnCol add: #editBtn; add: #delBtn ]; ]; yourself mlm := MyListModel new. mlm openWithSpec. mlm title value: 'I am a list'. mlm manager items: aCollectionOfDummyObjects it seem there isn't such implementation in Spec. What would be the best way to implement it (if it's possible)? a mix between ListModel and TabManager ? Regards, Glenn
Glenn Cavarlé
|
In reply to this post by Glenn Cavarlé
Welcome Glenn,
As a native english speaker I'd say your English is pretty darn good. I've presumed to do a few corrections and you can see it is a very few. So don't hold back. --- Hi all, i'm new (first post) and my english is very poor so please don't blame me :). I would like to use Spec _to_ display a collection of domain objects and i would like to specify the layout which _applys_ to each _item_, not just display a String or a Text like "ListModel>>displayBlock:" but a more _complex_ layout with rows, columns and images within (for example). To illustrate, an equivalent would be the component ListView in Android. I turn to you to know if it's possible to do that with Spec. --- Besides, I think there are more people on the list with english as a second language that those with native english. cheers -ben Glenn Cavarlé wrote: > Hi all, > i'm new (first post) and my english is very poor so please don't blame me > :). > > I would like to use Spec for display a collection of domain objects and i > would like to specify the layout which apply to each items, > not just display a String or a Text like "ListModel>>displayBlock:" but a > more complexe layout with rows, columns and images within (for example). > To illustrate, an equivalent would be the component ListView in Android. > > I turn to you to know if it's possible to do that with Spec. > Thanks, > > > Regards, > Glenn > > > > ----- > Glenn Cavarlé > -- > View this message in context: http://forum.world.st/Spec-question-tp4741608.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > > > |
In reply to this post by Glenn Cavarlé
Ok :)
So displayBlock can return any morph you want :) So I think you can do this quite easily :) I will have a deeper look tomorrow afternoon, and tell you :)
Ben On 05 Feb 2014, at 01:34, Glenn Cavarlé <[hidden email]> wrote: Thanks for your reply, |
In reply to this post by Glenn Cavarlé
hi glenn
were are you located? Because if you are around lille you should come to hack with us :) Stef On 05 Feb 2014, at 11:54, Glenn Cavarlé <[hidden email]> wrote: > Hi, > I have looked at the TreeModel class and it's not exactly that i seek. > The idea is rather something like that : > > MyListModel>>initializeWidgets > title := self newLabel. > manager := self newListManager. > manager model:#MyDummyItemModel > > MyListModel class>>defaultSpec > ^SpecLayout composed > newColumn:[:mainCol| > mainCol add: #title; > add: #manager > ]; > yourself > > MyDummyItemModel>>initializeWidgets > image := self newImage. > address := self newLabel. > zipCode := self newLabel. > city := self newLabel. > editBtn := self newButton. > delBtn := self newButton. > > MyDummyItemModel class>>defaultSpec: > ^SpecLayout composed > newRow:[:mainRow| > mainRow add: #image; > newColumn:[:addrCol| > addrCol add: #address; > add: #zipCode; > add: #city > ]; > newColumn:[:btnCol| > btnCol add: #editBtn; > add: #delBtn > ]; > ]; > yourself > > > mlm := MyListModel new. > mlm openWithSpec. > mlm title value: 'I am a list'. > mlm manager items: aCollectionOfDummyObjects > > > it seem there isn't such implementation in Spec. > What would be the best way to implement it (if it's possible)? a mix between > ListModel and TabManager ? > > Regards, > Glenn > > > > ----- > Glenn Cavarlé > -- > View this message in context: http://forum.world.st/Spec-question-tp4741608p4741681.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > |
Hi Stef,
It would be a pleasure but i'm located in Brest, so,a bit too distant... For holidays maybe ? :) But you can come in Brest if you want ? it's so beautiful ! Regards, Glenn
Glenn Cavarlé
|
In reply to this post by Ben Coman
Tkanks Ben for your corrections and your encouragement,
Google help me a little :) but it's a good exercice, especially if i want to make me understand in the Smalltalk community. Regards, Glenn
Glenn Cavarlé
|
In reply to this post by Glenn Cavarlé
Hi Stephane, all
Hello Glenn Glenn is starting his phd at Brest. You will meet him the next time you come at Brest :) and we will attend esug together. Cheers Alain On 5 févr. 2014, at 23:30, Glenn Cavarlé <[hidden email]> wrote: > Hi Stef, > > It would be a pleasure but i'm located in Brest, so,a bit too distant... > For holidays maybe ? :) > > But you can come in Brest if you want ? it's so beautiful ! > > Regards, > Glenn > > > > ----- > Glenn Cavarlé > -- > View this message in context: http://forum.world.st/Spec-question-tp4741608p4741808.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > |
In reply to this post by Benjamin Van Ryseghem (Pharo)
Did you have progress with that ListView in Spec? Cheers,Anything to check in the repo? Hernán 2014-02-05 15:15 GMT-03:00 Benjamin <[hidden email]>:
|
Thanks for interest,
I had a lot of problems i had to resolved before continue my work on ListView. it's possible to do a "ListView like" with MorphTreeModel (example: SimpleGridExample) and i'm seeing what it's possible to do simply with Spec TreeModel. I try to post an example in this thread, this weekend i hope. Regards,
Glenn Cavarlé
|
In reply to this post by hernanmd
On 01 Mar 2014, at 06:18, Hernán Morales Durand <[hidden email]> wrote:
|
Thanks Benjamin, I will try to build something and let you know. Cheers,Hernán 2014-03-02 10:11 GMT-03:00 Benjamin <[hidden email]>:
|
Hi Benjamin and Hernán,
I found few time to make a little example of ListView (extend TreeModel). I hosted it in my wiki : ListViewModel Example The only specific point it's to well define the displayBlock block an that's all. As Benjamin said previously, it was quite easy to do that with TreeModel. Thanks Benjamin ;-) Regards,
Glenn Cavarlé
|
Glenn, thanks for posting the link ! Robert On 3 March 2014 12:15, Glenn Cavarlé <[hidden email]> wrote: Hi Benjamin and Hernán, |
In reply to this post by Glenn Cavarlé
Thanks for the pointer :) Could you add an example and a screenshot so we can see how it looks :) Thanks, Ben
On 03 Mar 2014, at 17:15, Glenn Cavarlé <[hidden email]> wrote: Hi Benjamin and Hernán, |
Ops, i forgot to write the use case of the ListViewModel... i added it...
I subclass TreeModel to create a "native" Spec component like ListModel or DropListModel, which does simply what it is supposed to do, show a list of ComposableModel. It's just for the example, i made it also using ComposableModel and adding a TreeModel in layout and it works fine :). I will make an example more elegant tonight and i will add a screenshot. thanks for feedbacks, Regards,
Glenn Cavarlé
|
Free forum by Nabble | Edit this page |