#!/usr/bin/env python
"""**************************************************************************
** $Id$
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of an example program for Qt. This example
** program may be used, distributed and modified without limitation.
**
***************************************************************************"""
import sys
from qt import *
class Viewer( QWidget ):
def __init__( self ):
QWidget.__init__( self )
self.setFontSubstitutions()
#greeting_heb = QString.fromUtf8( "\327\251\327\234\327\225\327\235" )
greeting_heb = unicode( '\327\251\327\234\327\225\327\235','utf8' )
#greeting_ru = QString.fromUtf8( "\320\227\320\264\321\200\320\260\320\262\321\201\321\202\320\262\321\203\320\271\321\202\320\265" )
greeting_ru = unicode('\320\227\320\264\321\200\320\260\320\262\321\201\321\202\320\262\321\203\320\271\321\202\320\265','utf8' )
greeting_en = "Hello"
self.greetings = QTextView( self, "textview" )
self.greetings.setText( greeting_en + "\n" +
greeting_ru + "\n" +
greeting_heb )
self.fontInfo = QTextView( self, "fontinfo" )
self.setDefault()
self.defaultButton = QPushButton( "Default", self, "pushbutton1" )
self.defaultButton.setFont( QFont( "times" ) )
self.connect( self.defaultButton, SIGNAL("clicked()"), self.setDefault )
self.sansSerifButton = QPushButton( "Sans Serif", self, "pushbutton2" )
self.sansSerifButton.setFont( QFont( "Helvetica", 12 ) )
self.connect( self.sansSerifButton, SIGNAL("clicked()"), self.setSansSerif )
self.italicsButton = QPushButton( "Italics", self, "pushbutton3" )
self.italicsButton.setFont( QFont( "lucida", 12, QFont.Bold, True ) )
self.connect( self.italicsButton, SIGNAL("clicked()"), self.setItalics )
self.layout()
def setDefault( self ):
font = QFont( "Bavaria" )
font.setPointSize( 24 )
font.setWeight( QFont.Bold )
font.setUnderline( True )
self.greetings.setFont( font )
self.showFontInfo( font )
def setSansSerif( self ):
font = QFont( "Newyork", 18 )
font.setStyleHint( QFont.SansSerif )
self.greetings.setFont( font )
self.showFontInfo( font )
def setItalics( self ):
font = QFont( "Tokyo" )
font.setPointSize( 32 )
font.setWeight( QFont.Bold )
font.setItalic( True )
self.greetings.setFont( font )
self.showFontInfo( font )
def showFontInfo( self, font ):
info = QFontInfo( font )
messageText = "Font requested: \"" + str(font.family()) + "\" " \
+ str(QString.number( font.pointSize() )) + "pt
" \
+ "Font used: \"" + str(info.family()) + "\" " \
+ str(QString.number( info.pointSize() )) + "pt
" if not self.substitutes.isEmpty() : messageText += "The following substitutions exist for " + \ str(font.family()) + ":