diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-19 09:56:49 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-19 09:56:49 (GMT) |
commit | 58ddb555c44a02f33ddf9ef549db0a2395c82da1 (patch) | |
tree | 2af84134fddd64c77a90b0e4f45aedf7636641da /shell/home/HomeWindow.py | |
parent | e5eef2e183fc13a0d7bbc1faff7c6c48c75671ae (diff) | |
parent | f8c4f0bd66309fda38047d47fb57c47409dcecf0 (diff) |
Merge demo4 branch
Diffstat (limited to 'shell/home/HomeWindow.py')
-rw-r--r-- | shell/home/HomeWindow.py | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/shell/home/HomeWindow.py b/shell/home/HomeWindow.py new file mode 100644 index 0000000..86c83ab --- /dev/null +++ b/shell/home/HomeWindow.py @@ -0,0 +1,48 @@ +import gtk + +from home.MeshView import MeshView +from home.HomeView import HomeView +from home.FriendsView import FriendsView + +class HomeWindow(gtk.Window): + HOME_VIEW = 0 + FRIENDS_VIEW = 1 + MESH_VIEW = 2 + + def __init__(self, shell, model): + gtk.Window.__init__(self) + + self.connect('realize', self.__realize_cb) + + self._nb = gtk.Notebook() + self._nb.set_show_tabs(False) + self._nb.set_show_border(False) + + home_view = HomeView(shell) + self._nb.append_page(home_view) + self._setup_canvas(home_view) + home_view.show() + + friends_view = FriendsView(shell, model.get_friends()) + self._nb.append_page(friends_view) + self._setup_canvas(friends_view) + friends_view.show() + + mesh_view = MeshView(shell, model.get_mesh()) + self._setup_canvas(mesh_view) + self._nb.append_page(mesh_view) + mesh_view.show() + + self.add(self._nb) + self._nb.show() + + def set_view(self, view): + self._nb.set_current_page(view) + + def _setup_canvas(self, canvas): + canvas.set_bounds(0, 0, 1200, 900) + canvas.set_scale(float(800) / float(1200)) + canvas.set_size_request(800, 600) + + def __realize_cb(self, window): + self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DESKTOP) |