[Seaside] WATableReport Checkbox

Robert Sirois watchlala at hotmail.com
Fri Dec 3 18:31:38 UTC 2010


Mm, this is a lot to look at on my cell phone ;)

Here's my suggestion for now:

Simplify what you're doing by making a little test app or something. Say, ok, I want to display different items, but I want an action associated with them, and I want them in a table as rows.

Write all the rendering methods separate from your data model, so when you're rendering a list of items, you simply call a render method on it, ie:

#renderItem: anItem on: html

So, you would end up with:

items do: [:ea | self renderItem: ea on: html ].

Yay, so now my items are displayed. My renderItem method has a little checkbox that serializes the object that the row represents to, say, #selectedItems, so now I can do whatever with those.

Hopefully that's not too oversimplified and helps hehe.

RS

From: abalonpe at ulb.ac.be
Date: Fri, 3 Dec 2010 19:14:39 +0100
Subject: Re: [Seaside] WATableReport Checkbox
To: seaside at lists.squeakfoundation.org

I got the right row when displaying the checkbox but when I click on the checkbox nothing appears in the transcript.The submitButton fails when I add the following line --> bibliTableListExport drawOn: canvas.


bibliTableList is a list of different tables (Articles, Books, Conferences,...)Here is what does drawOn:canvas:
drawOn: canvas	biblis size = 0

		ifFalse: [ 			self renderBibteXOn: canvas.			bibType = 'All'

				ifTrue: [ 					self						do: [ :eachTable | 

							eachTable								removeActionColumn;	





    rows: (biblis select: [ :eachBibli | (eachBibli dico at: 'BibteX Type') data = eachTable       bibType ]);								addActionColumn;

								drawOn: canvas ] ]				ifFalse: [ 					(self select: [ :eachTable | eachTable bibType = bibType ])

						do: [ :eachSelectedTable | 							eachSelectedTable								removeActionColumn;





    rows: (biblis select: [ :eachBibli | (eachBibli dico at: 'BibteX Type') data =    eachSelectedTable bibType ]);

								addActionColumn;								drawOn: canvas ] ] ].
For eachTable the method calls another drawOn:canvas which draw the table depending on its type (Article, Book,...)


drawOn: canvas		rows size = 0		ifFalse: [ 

					(canvas div)				class: 'inTitle';

				with: [ 							(canvas heading)								level: 3;

								with: self bibType ].			(canvas div)				class: 'bibliTable';

				with: [ canvas render: super ].			(canvas div)				class: 'controlLink';

				with: [ 							self renderOptionalAnchorOn: canvas.							self renderUserAnchorOn: canvas ]] 


I hope this can clarify the sequence of action.Thx very much for your help.alex
2010/12/3 Robert Sirois <watchlala at hotmail.com>






Check out what row is in the callback by exploring or using the Transcript.

You might be losing pointers to the objects somewhere in there.

RS

From: abalonpe at ulb.ac.be


Date: Fri, 3 Dec 2010 18:30:27 +0100
Subject: Re: [Seaside] WATableReport Checkbox
To: seaside at lists.squeakfoundation.org



I have a submitButton also in the form with an empty callback.I just want the button to trigger all the callbacks of the checkboxes.However it doesn't seem to work at all.


Alex



2010/12/3 Robert Sirois <watchlala at hotmail.com>






How are you submitting the data?

Either they need to be in a form, or if you're serializing via ajax, remember to use #serializeWithHidden I think it's called.

RS

From: abalonpe at ulb.ac.be




Date: Fri, 3 Dec 2010 17:02:02 +0100
Subject: Fwd: [Seaside] WATableReport + Checkbox
To: seaside at lists.squeakfoundation.org

Hi,




I have a problem with checkboxes. I'm trying to add a checkbox at each line of a table.I have tried several things(the last tries are in comments): 


addActionColumn
		columns		add:
			((WAReportColumn new)				title: '';				valueBlock: [ :row :html | 






								html span									with:[


  "checked ifTrue:[BibliList bibliCollection add: row]."									html checkbox






										value: checked;										onTrue:[BibliList bibliCollection add: row]
										onFalse:[].										"onClick: [checked := true]"                                                                                "callback:[:value | value ifTrue: [BibliList bibliCollection add: row]]"






                                                                                      ]]).
Unfortunately, nothing seems to work...when I click on the checkbox, nothing happen and my list bibliCollection (which is an OrderedCollection) is still empty.






Thx for your helpalex



_______________________________________________
seaside mailing list
seaside at lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside 		 	   		  

_______________________________________________

seaside mailing list

seaside at lists.squeakfoundation.org

http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside





_______________________________________________
seaside mailing list
seaside at lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside 		 	   		  

_______________________________________________

seaside mailing list

seaside at lists.squeakfoundation.org

http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside





_______________________________________________
seaside mailing list
seaside at lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20101203/6a74d9c5/attachment-0001.htm


More information about the seaside mailing list