Create a "cache" to store hashed ID for each Tab control opened, help to speed process when loading a full layout. Hasing is done via UniqueIdFromTooltip() that use File functions that can take some time to execute. Here hash is created when tab is opened and after that reused from cache. Updated when tab is changed
Concrete situation :
Workspace with 55 project and 42 opened files (about 35 from 2 projects). Without (Win 7/ 64bits) : loading codeblocks from scratch - workspace is default worskpace and automatically opened - take about 35s, with patch, take about 15s
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Can you write a commit message, that explains what the patch does?
Can you describe the situation where this patch help with performance?
What patch does :
Create a "cache" to store hashed ID for each Tab control opened, help to speed process when loading a full layout. Hasing is done via UniqueIdFromTooltip() that use File functions that can take some time to execute. Here hash is created when tab is opened and after that reused from cache. Updated when tab is changed
Concrete situation :
Workspace with 55 project and 42 opened files (about 35 from 2 projects). Without (Win 7/ 64bits) : loading codeblocks from scratch - workspace is default worskpace and automatically opened - take about 35s, with patch, take about 15s
As a side note, before r10551, (and without patch) same workspace took 180s to load (from scratch) r10551 and/or r10552 helped by cutting down to 35s