Bug 419928 - GridTableViewer and Grid performance improvement
Summary: GridTableViewer and Grid performance improvement
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Nebula (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: Thomas Schindl CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-20 09:12 EDT by Mirko Paturzo CLA
Modified: 2021-07-05 11:41 EDT (History)
4 users (show)

See Also:


Attachments
Test and patch (206.80 KB, application/octet-stream)
2013-10-20 09:14 EDT, Mirko Paturzo CLA
no flags Details
Patch start from git repository (12.50 KB, patch)
2013-10-20 12:17 EDT, Mirko Paturzo CLA
no flags Details | Diff
Tests (7.88 KB, application/octet-stream)
2013-10-20 12:35 EDT, Mirko Paturzo CLA
no flags Details
Patch start from git repository (70.94 KB, application/octet-stream)
2013-10-20 12:43 EDT, Mirko Paturzo CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mirko Paturzo CLA 2013-10-20 09:12:29 EDT
Hi all, 
in this projects there are some performance improvements and the solution of bug 248386.

A little description

There is no more collection within the GridItem , this greatly improves the creation and management of data.
Everything is based on DataVisualizer . This is a centralized component that is allowed to set and get information such as: what is my fonts? what is my background? what is my text ?
I implemented three types of DataVisualizer :
1 ) ColumnRowBigDataVisualizer . This simply saves the data from column / row in Map < Integer , List Of T >
2 ) RowColumnBigDataVisualizer , as above, but save rows / columns
3 ) the real news, the AdaptedDataVisualizer that works as a LabelProvider . Thanks to AdaptedDataVisualizer Shot down the memory usage

I fixed some bugs for memory leaks and improve performance of Grid OnPaint method ..
A change that I could not give to you is the removal of the IsVisible method and the reimplementation of all the calculations of the first index to be seen, the performance increase greatly.
Instead, for "creating incremental GridItem " I do not think that my implementation is stable , however if you are interested , I will try to improve it. For now I do not give to you .

Attached tests and changes

Thanks for your attention
Mirko
Comment 1 Mirko Paturzo CLA 2013-10-20 09:14:24 EDT
Created attachment 236690 [details]
Test and patch
Comment 2 Mirko Paturzo CLA 2013-10-20 09:57:01 EDT
Dispose a Grid is top slow.. For improvement see clearlAll AMD disposeOnly method
Comment 3 Wim Jongman CLA 2013-10-20 11:10:03 EDT
(In reply to Mirko Paturzo from comment #1)
> Created attachment 236690 [details]
> Test and patch

Thank you Mirko. Is it possible to apply a workspace patch to the bug? It is not possible to find and evaluate your changes otherwise.
Comment 4 Mirko Paturzo CLA 2013-10-20 12:17:13 EDT
Created attachment 236693 [details]
Patch start from git repository

There are two patch on this 7zip file
Mirko
Comment 5 Mirko Paturzo CLA 2013-10-20 12:35:09 EDT
Created attachment 236694 [details]
Tests

i forgot the examples.. Sorry
Thanks so much
Mirko
Comment 6 Mirko Paturzo CLA 2013-10-20 12:43:46 EDT
Created attachment 236695 [details]
Patch start from git repository
Comment 7 Mirko Paturzo CLA 2013-10-20 12:46:04 EDT
Excuse me.. My first time.. i changed the patch file.. There are 2 projects with jface GridTableViewer..

Sorry for my mistake
Comment 8 Marko Herchet CLA 2014-01-22 06:10:44 EST
Looking forward to see those changes. Due to the bug being on status NEW I assume that this is not already part of the version I can find on http://www.eclipse.org/nebula/downloads.php ?
Comment 9 Wim Jongman CLA 2014-01-22 06:22:02 EST
Mirko can you please put your patch in Gerrit?

https://wiki.eclipse.org/Nebula/Contributions#Patches
Comment 10 Wim Jongman CLA 2014-01-22 06:23:12 EST
Mirko please sign the CLA otherwise we cannot accept patches.
Comment 11 Mirko Paturzo CLA 2014-01-22 09:26:54 EST
Hi all,
I have signed the CLA agreement.
I have put in Gerrit the patch as suggested.
Please contact me again if you have any questions.

Mirko

(In reply to Wim Jongman from comment #10)
> Mirko please sign the CLA otherwise we cannot accept patches.
Comment 12 Wim Jongman CLA 2014-01-25 14:22:30 EST
(In reply to Mirko Paturzo from comment #11)
> Hi all,
> I have signed the CLA agreement.
> I have put in Gerrit the patch as suggested.

Mirko I see no change in Gerrit. Can you try again?

https://wiki.eclipse.org/Nebula/Contributions#Patches
Comment 13 Mirko Paturzo CLA 2014-01-27 03:26:49 EST
Hi,

Could you try now?

(In reply to Wim Jongman from comment #12)
> (In reply to Mirko Paturzo from comment #11)
> > Hi all,
> > I have signed the CLA agreement.
> > I have put in Gerrit the patch as suggested.
> 
> Mirko I see no change in Gerrit. Can you try again?
> 
> https://wiki.eclipse.org/Nebula/Contributions#Patches
Comment 14 Mirko Paturzo CLA 2014-02-10 07:26:57 EST
Gerrit review accepted by Wim Jongman and commit in master.

https://git.eclipse.org/r/#/c/21324/