Heres what I do: 0) Before I bind a row, I getData and look for a data binding context that had been previously used to bind the row. If I find one, I dispose the DBC. 1) Use data binding to bind the controls in each row to the data model directly in CompositeTable's refresh event. 2) Store the data binding context I used to bind the row in the row object itself using setData.
Then data binding will automatically do individual row refreshes whenever the underlying model changes. :-) Given the above, do you still feel like the manual refreshRow() API is necessary? If so, I'm willing to add it; just submit a patch. :-) Regards, Dave ----- Original Message ----- From: [EMAIL PROTECTED] To: [email protected] Sent: Monday, February 19, 2007 11:00:20 AM GMT-0800 Subject: nebula-dev Digest, Vol 11, Issue 13 Send nebula-dev mailing list submissions to [email protected] To subscribe or unsubscribe via the World Wide Web, visit https://dev.eclipse.org/mailman/listinfo/nebula-dev or, via email, send a message with subject or body 'help' to [EMAIL PROTECTED] You can reach the person managing the list at [EMAIL PROTECTED] When replying, please edit your Subject line so it is more specific than "Re: Contents of nebula-dev digest..." Today's Topics: 1. [nebula-dev][compositeTable] refresh single row ( Andr? Dietisheim ) ---------------------------------------------------------------------- Message: 1 Date: Mon, 19 Feb 2007 16:46:45 +0100 (CET) From: " Andr? Dietisheim " <[EMAIL PROTECTED]> Subject: [nebula-dev][compositeTable] refresh single row To: <[email protected]> Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=iso-8859-1 Hi Dave I suppose you're right in the middle of your client change and when I see the weather reports on north america, I guess you have plenty of thing to do / snow to shovel :-( I am building a cell-editor 'framework' and I have the need to refresh a single row (the currently edited one). My need is due to sort of autocomplete-functionality (ex. you fill in the committers age and the (model-) 'autocompleter component' fills in the age automatically. In my usecase the age is still a suggestion and must still be editable by the user (which is of course not for my simple example :-) I implemented all my stuff in a custom EditableRow that triggers a ICellModifyEvent. The user programmer (that completely handles all model changes) may then insert the age-value in the model and request the table to refresh the row that currently shows the model-entry. For that aim I need a method where the user-programmer may request the table to refresh a single row. Do you agree with my idea/handling of this functionality? I you do so I'll - as usual :-) - submit the stuff to bugzilla. CompositeTable: public void refreshRow(int row) { if (contentPane != null) { contentPane.refreshRow(row); } } InternalCompositeTable: public void refreshRow(int row) { if (!isRowVisible(row)) { return; } fireRefreshEvent(topRow + currentRow, getRowByNumber(row).getRowControl()); } I may commit-back the whole cellEditor stuff when it's ready, if you think it would be of any use for the table users. Regards Andr� -- Andr� Dietisheim Stv-Bereichsleiter Products Puzzle ITC GmbH Eigerplatz 4 CH-3007 Bern Telefon +41 31 370 22 00 Mobile +41 76 423 03 02 Fax +41 31 370 22 01 Puzzle ist Mitglied der ODF Alliance: <http://www.puzzle.ch/odfalliance/> ------------------------------ _______________________________________________ nebula-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/nebula-dev End of nebula-dev Digest, Vol 11, Issue 13 ******************************************
_______________________________________________ nebula-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/nebula-dev
