@ -337,6 +337,19 @@ int TQTextFormat::pntr_asc=-1;
int TQTextFormat : : pntr_hei = - 1 ;
int TQTextFormat : : pntr_hei = - 1 ;
int TQTextFormat : : pntr_dsc = - 1 ;
int TQTextFormat : : pntr_dsc = - 1 ;
void TQTextFormat : : cleanupPrivateData ( ) {
delete TQTextFormat : : pntr_fm ;
TQTextFormat : : pntr_fm = 0 ;
TQTextFormat : : pntr = 0 ;
// Not really necessary, but better to tidy-up everything
TQTextFormat : : pntr_fm = 0 ;
TQTextFormat : : pntr_ldg = - 1 ;
TQTextFormat : : pntr_asc = - 1 ;
TQTextFormat : : pntr_hei = - 1 ;
TQTextFormat : : pntr_dsc = - 1 ;
}
void TQTextFormat : : setPainter ( TQPainter * p )
void TQTextFormat : : setPainter ( TQPainter * p )
{
{
pntr = p ;
pntr = p ;
@ -350,10 +363,16 @@ TQPainter* TQTextFormat::painter()
void TQTextFormat : : applyFont ( const TQFont & f )
void TQTextFormat : : applyFont ( const TQFont & f )
{
{
TQFontMetrics fm ( pntr - > fontMetrics ( ) ) ;
TQFontMetrics fm ( pntr - > fontMetrics ( ) ) ;
if ( ! pntr_fm ) {
tqAddPostRoutine ( & TQTextFormat : : cleanupPrivateData ) ;
}
if ( ! pntr_fm
if ( ! pntr_fm
| | pntr_fm - > painter ! = pntr
| | pntr_fm - > painter ! = pntr
| | pntr_fm - > d ! = fm . d
| | pntr_fm - > d ! = fm . d
| | ! pntr - > font ( ) . isCopyOf ( f ) ) {
| | ! pntr - > font ( ) . isCopyOf ( f )
) {
pntr - > setFont ( f ) ;
pntr - > setFont ( f ) ;
delete pntr_fm ;
delete pntr_fm ;
pntr_fm = new TQFontMetrics ( pntr - > fontMetrics ( ) ) ;
pntr_fm = new TQFontMetrics ( pntr - > fontMetrics ( ) ) ;