| Summary: | TableViewer does not refresh | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [RT] RAP | Reporter: | Christian Schwarz <chriss.dev> | ||||
| Component: | JFace | Assignee: | Project Inbox <rap-inbox> | ||||
| Status: | RESOLVED INVALID | QA Contact: | |||||
| Severity: | major | ||||||
| Priority: | P3 | ||||||
| Version: | 1.3 | ||||||
| Target Milestone: | --- | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Christian Schwarz
Created attachment 172910 [details]
2 test projects
If I understand correctly, you want to update/refresh the UI (table) from the server side (Job). In this case you have to activate the UICallback first. Something like this:
------
UICallBack.activate( getClass().getSimpleName() );
new WorkbenchJob(parent.getDisplay(), "refresh Table") {
....
}
-----
Please reopen if disagree.
Okay, thanks ! Now it works fine. I wonder why i have never heard of UICallBack.*, is there any documentation that points out why and when it have to be used (the UICallback-APIDoc and google didn't help much) ? It make single sourcing a bit complicated. Right now it seems to me that #activate(..) must called always, if i want to run something in the UI-Thread. If yes, why isn't it done in every call of Display.syncExec(..) / .asyncExec(..) ? Should i call UICallback.deactivate() after the Job is done ? Thanks and sorry for my bad english The first sentence of that link is: Note: this article only applies if you are not using the Jobs API to do background work. In the provided test project the Job-API is used, so i think i dont have to use the UICallback-methods at all. The WorkbenchJob is used like in this example: http://wiki.eclipse.org/RAP/FAQ#How_to_update_the_UI_from_a_background_thread_using_Jobs.3F Maybe there is a Bug in the Job-API or the wiki is wrong. Hi Chris, I think that this issue is the same like in this bug 274806 - reschedule the Job inside the Job, outside the request and we can't do much inside the framework. See bug 274806 comment # 16. |