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
43
44
45
46
47
48
49
50
51
|
# !/usr/bin/python
# -*- coding: utf-8 -*-
# Glitter Toolkit
__authors__ = ["Jan Jokela <janjokela@gmail.com>"]
__licenses__ = ["LICENSE.LGPL"]
__description__ = "Glitter window"
import os
import sys
import cluttergtk
import clutter
import gtk
from style import Style
class Window(gtk.Window):
"""
A Glitter window offers a ready GTK window with an embedded clutter stage.
"""
def __init__(self, title="Glitter Application", width=800, height=480,
resizable=True):
""" Initialize window template """
super(Window, self).__init__()
self.set_title(title)
self.set_default_size(width, height)
# cluttergtk embed widget
self.embed = cluttergtk.Embed()
self.embed.set_flags(gtk.CAN_FOCUS)
self.embed.grab_focus()
self.add(self.embed)
self.set_focus(self.embed)
self.embed.show()
self.stage = self.embed.get_stage()
self.stage.set_size(width, height)
self.stage.set_color(clutter.Color(0x00, 0x00, 0x00, 0x00))
self.stage.show()
def get_stage(self):
""" Retrieve stage """
return self.stage
|