File: testgtkfont.py

package info (click to toggle)
python-gtkextra 0.21-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 2,284 kB
  • ctags: 1,618
  • sloc: ansic: 8,966; python: 4,231; makefile: 43
file content (42 lines) | stat: -rwxr-xr-x 1,111 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/bin/env python

from gtk import *
from gtkextra import *

PREVIEW_TEXT = "ABCDEFGHI abcdefghi 0123456789"
    
class Application(GtkWindow):

    def __init__(self):
        GtkWindow.__init__(self, title="GtkFontCombo Demo")
        self.connect("destroy", mainquit)

        vbox = GtkVBox()
        self.add(vbox)

        font_combo = GtkFontCombo()
        vbox.pack_start(font_combo, FALSE, FALSE)

        preview_entry = GtkEntry()
        preview_entry.set_text(PREVIEW_TEXT)
        vbox.pack_start(preview_entry)

        self.new_font(font_combo, preview_entry)
        font_combo.connect("changed", self.new_font, preview_entry)

        self.show_all()

    def new_font(self, font_combo, preview_entry, *args):
        style = preview_entry.get_style().copy()
        style.font = font_combo.font
        preview_entry.set_style(style)
        if not preview_entry.get_text():
            preview_entry.set_text(PREVIEW_TEXT)
        preview_entry.set_position(0)
        
    def mainloop(self):
        mainloop()

if __name__ == '__main__':		
    app = Application()
    app.mainloop()