void Font::Release() { if (fid) { delete PFont(fid); fid = 0; } }
// Return the QFont for a Font. QFont SurfaceImpl::convertQFont(Font &font) { QFont *f = PFont(font.GetID()); if (f) return *f; return QApplication::font(); }
// Get the metrics for a font. QFontMetrics SurfaceImpl::metrics(Font &font_) { QFont *f = PFont(font_.GetID()), fnt; if (f) fnt = *f; else fnt = QApplication::font(); return QFontMetrics(fnt, pd); }
void SurfaceImpl::drawText(const PRectangle &rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore) { QString qs = convertText(s, len); QFont *f = PFont(font_.GetID()); if (f) painter->setFont(*f); painter->setPen(convertQColor(fore)); painter->drawText(QPointF(rc.left, ybase), qs); }
void SurfaceImpl::drawText(PRectangle rc, Font &font_, int ybase, const char *s, int len, ColourAllocated fore) { QString qs = convertText(s, len); QFont *f = PFont(font_.GetID()); if (f) painter->setFont(*f); painter->setPen(convertQColor(fore)); painter->drawText(rc.left, ybase, qs); }
// Get the metrics for a font. QFontMetrics SurfaceImpl::metrics(Font &font_) { QFont *f = PFont(font_.GetID()), fnt; if (f) fnt = *f; else fnt = QApplication::font(); if (painter && painter->isActive()) { painter->setFont(fnt); return painter->fontMetrics(); } return QFontMetrics(fnt); }
void Window::SetFont(Font &font) { PWindow(wid)->setFont(*PFont(font.GetID())); }