Issue 26679

Summary: Font Management in GSL needs cleanup
Product: gsl Reporter: hdu <hdu>
Component: codeAssignee: hdu <hdu>
Status: CLOSED FIXED QA Contact: issues@gsl <issues>
Severity: Trivial    
Priority: P3 CC: issues
Version: OOo 1.0.0   
Target Milestone: OOo 2.0   
Hardware: All   
OS: All   
Issue Type: ENHANCEMENT Latest Confirmation in: ---
Developer Difficulty: ---
Issue Depends on:    
Issue Blocks: 10901, 11553, 13375, 15687, 11494, 13056, 17515, 19105, 19614, 21434, 22231, 24221, 28765    

Description hdu@apache.org 2004-03-18 15:04:36 UTC
During the evolution of the GSL layer a lot of structures, classes, caches ,
functions and algorithms were added to it to describe and work with the
different aspects of font management.

Unfortunately the coherence and stability of the font management suffered due to
these ad-hoc extensions. E.g. one of the most often reported crash reports comes
from inconsistencies between different  caches of font data. Due to these
stability problems and other inconsitencies the caches have to be invalidated
way too often.

Unfortunately some new features require expensive computations and having to
recalculate their results too often makes these features prohibitively costly.

The goal of this task is to clean up the font management structures and the
code, so that extending anything has less risks of side effects and becomes
manageable.
Comment 1 hdu@apache.org 2004-03-18 15:29:51 UTC
Accepting.

This one blocks issue 19105, issue 17515, issue 13375,  issue 15687,  issue
10901, issue 11553, issue 11494, issue 19614, issue 13056, issue 22231,  issue
24221, issue 21434, #102229#, #105317#, #107631#, #111846#, #110906#, #115619#,
#114908#, 
Comment 2 hdu@apache.org 2004-06-23 14:04:28 UTC
The first step of the font management rework is done in CWS fontlists02:

- the font face objects and the font instance objects can now be extended to
cache extra font technology specific information. 
- the old containers like LIST in font management are replaced by more
appropriate STL containers, which also allows to improve the average complexity
of many important font management operations from O(N)->O(log N) or O(N)->O(1).
- the font management classes are better encapsulated
Comment 3 hdu@apache.org 2004-06-24 08:51:28 UTC
.
Comment 4 hdu@apache.org 2004-08-04 11:55:25 UTC
Will use the new infrastructure in the new CWS fontlists*.
Closing.