|
Re: treeviewer columns disposal [message #1023640 is a reply to message #1023620] |
Sun, 24 March 2013 16:22  |
Eclipse User |
|
|
|
a) why do you set a content provider all time?
b) why not setting the label-provider before the content-provider
Tom
On 24.03.13 15:05, Mokhtar Abdu wrote:
> Hi,
> When I dispose and then create my treeviewer columns DYNAMICALLY, then
> set contentProvider of the treeviewer, I get exception "colmun X has no
> label..."
> method:
>
> public void updateTree(ArrayList<ResultsVersion> selectedVersions) {
> disposeTreeColumns();
> createTreeColumns();
> trVrCandidates.setContentProvider(new
> CandidatesContentProvider());
> trVrCandidates.setLabelProvider(new CandidatesLabelProvider());
> trVrCandidates.setInput(selectedVersions);
> }
>
> }
>
> First call of updateTree() works fine but secend not. As if the disposal
> of columns is not yet finished. (If i dispose the treeviewer itself and
> create it, this problem disappears but this is a bad solution for me)
>
> Here are the disposal and creation methods:
>
> private void disposeTreeColumns() {
> TreeColumn[] clmns = trVrCandidates.getTree().getColumns();
> for (TreeColumn clm : clmns) {
> clm.dispose();
> }
> }
>
> Here the param model is what determine how many columns i need to create.
>
> private void createTreeColumns(ArrayList<ResultsVersion> model) {
> for (ResultsVersion rv : model) {
> TreeViewerColumn treeViewerColumn = new
> TreeViewerColumn(trVrCandidates, SWT.NONE); TreeColumn trclmnNewColumn =
> treeViewerColumn.getColumn();
> trclmnNewColumn.setWidth(120);
> trclmnNewColumn.setText(rv.getTimeTag());
> }
> }
>
> please Help me :? I am dying because of this.
> Thanks
> Mok
|
|
|
Powered by
FUDForum. Page generated in 0.89625 seconds