Skip to content

[padpainter] handle text size in correspondent painters#22088

Merged
linev merged 7 commits into
root-project:masterfrom
linev:move_text_size
Apr 29, 2026
Merged

[padpainter] handle text size in correspondent painters#22088
linev merged 7 commits into
root-project:masterfrom
linev:move_text_size

Conversation

@linev
Copy link
Copy Markdown
Member

@linev linev commented Apr 28, 2026

Normal TPadPainter require pixel size, but TPadPainterPS expects relative units.
Move this difference from TAttText to correspondent painter classes.

Implement new text extension routines for TGLPadPainter.
While it uses own ftgl-based text rendering - also let it provide text extension/ascent/descent metrics.

Adjust TGCocoa build - move necessary includes to public include directory, otherwise "TGCocoa.h" is not usable.

linev added 7 commits April 28, 2026 16:14
Depending from kind of output PS/VirtualX/GL either pixel size
or relative size is used. While TAttText should not care -
move conversion to correspondent TPadPainter class.

In ROOT7 one can move handling of text size down to
concrete implementation like TGX11 or TSVG.
Now keep as is for backward compatibility.
While TGLPadPainter uses own font handles,
one also can implement text extension measuring
Used for latex - so provide it
Otherwise TGCocoa.h header cannot be used
Hide X11Atoms.h from TGCocoa.h while it is only used internally by TGCococa
Directly map gVirtualX->ClearWindowW() functionality, while there is tiny difference with already existing ClearDrawable() method.
This method only used in TCanvas::Build().
@github-actions
Copy link
Copy Markdown

Test Results

    22 files      22 suites   3d 14h 4m 50s ⏱️
 3 853 tests  3 802 ✅ 0 💤 51 ❌
76 954 runs  76 903 ✅ 0 💤 51 ❌

For more details on these failures, see this check.

Results for commit 68c001f.

@linev linev merged commit 8c6fbdc into root-project:master Apr 29, 2026
30 of 33 checks passed
@linev linev deleted the move_text_size branch April 29, 2026 09:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants