class _HelpWindow(_DialogWindow): # A dialog window to display the game instructions. def __init__(self): super(_HelpWindow, self).__init__('toolbar-help', _("Help")) offset = style.GRID_CELL_SIZE width = Gdk.Screen.width() - offset * 2 height = Gdk.Screen.height() - offset * 2 self.set_size_request(width, height) self._help_widget = HelpWidget(self._icon_file) self.content_vbox.pack_start(self._help_widget, True, True, 0) self._help_nav_bar = _HelpNavBar() self.content_vbox.pack_end(self._help_nav_bar, expand=False, fill=False, padding=style.DEFAULT_SPACING) for (signal_name, callback) in [('forward-clicked', self._forward_clicked_cb), ('reload-clicked', self._reload_clicked_cb), ('back-clicked', self._back_clicked_cb)]: self._help_nav_bar.connect(signal_name, callback) self._update_prev_next() def _forward_clicked_cb(self, source): self._help_widget.next_stage() self._update_prev_next() def _back_clicked_cb(self, source): self._help_widget.prev_stage() self._update_prev_next() def _reload_clicked_cb(self, source): self._help_widget.replay_stage() def _icon_file(self, icon_name): theme = Gtk.IconTheme.get_default() info = theme.lookup_icon(icon_name, 0, 0) return info.get_filename() def _update_prev_next(self): hw = self._help_widget self._help_nav_bar.set_can_prev_stage(hw.can_prev_stage()) self._help_nav_bar.set_can_next_stage(hw.can_next_stage())
class _HelpWindow(gtk.Window): def __init__(self): super(_HelpWindow, self).__init__() self.set_size_request(640, 480) self.set_position(gtk.WIN_POS_CENTER_ON_PARENT) self.set_modal(True) vbox = gtk.VBox() self.add(vbox) self._help_widget = HelpWidget(self._icon_file) vbox.pack_start(self._help_widget) self._help_nav_bar = _HelpNavBar() vbox.pack_end(self._help_nav_bar, expand=False) for (signal_name, callback) in [ ("forward-clicked", self._forward_clicked_cb), ("reload-clicked", self._reload_clicked_cb), ("back-clicked", self._back_clicked_cb), ]: self._help_nav_bar.connect(signal_name, callback) self._update_prev_next() def _stop_clicked_cb(self, source): self.destroy() def _forward_clicked_cb(self, source): self._help_widget.next_stage() self._update_prev_next() def _back_clicked_cb(self, source): self._help_widget.prev_stage() self._update_prev_next() def _reload_clicked_cb(self, source): self._help_widget.replay_stage() def _icon_file(self, icon_name): return os.path.join("icons", icon_name + ".svg") def _update_prev_next(self): hw = self._help_widget self._help_nav_bar.set_can_prev_stage(hw.can_prev_stage()) self._help_nav_bar.set_can_next_stage(hw.can_next_stage())
class _HelpWindow(Gtk.Window): def __init__(self): super(_HelpWindow, self).__init__() self.set_size_request(640, 480) self.set_position(Gtk.WindowPosition.CENTER_ON_PARENT) self.set_modal(True) vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) self.add(vbox) self._help_widget = HelpWidget(self._icon_file) vbox.pack_start(self._help_widget, True, True, 0) self._help_nav_bar = _HelpNavBar() vbox.pack_end(self._help_nav_bar, False, False, _DEFAULT_SPACING) for (signal_name, callback) in [('forward-clicked', self._forward_clicked_cb), ('reload-clicked', self._reload_clicked_cb), ('back-clicked', self._back_clicked_cb)]: self._help_nav_bar.connect(signal_name, callback) self._update_prev_next() def _stop_clicked_cb(self, source): self.destroy() def _forward_clicked_cb(self, source): self._help_widget.next_stage() self._update_prev_next() def _back_clicked_cb(self, source): self._help_widget.prev_stage() self._update_prev_next() def _reload_clicked_cb(self, source): self._help_widget.replay_stage() def _icon_file(self, icon_name): return os.path.join('icons', icon_name + '.svg') def _update_prev_next(self): hw = self._help_widget self._help_nav_bar.set_can_prev_stage(hw.can_prev_stage()) self._help_nav_bar.set_can_next_stage(hw.can_next_stage())
class _HelpWindow(Gtk.Window): def __init__(self): super(_HelpWindow, self).__init__() self.set_size_request(640, 480) self.set_position(Gtk.WindowPosition.CENTER_ON_PARENT) self.set_modal(True) vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) self.add(vbox) self._help_widget = HelpWidget(self._icon_file) vbox.pack_start(self._help_widget, True, True, 0) self._help_nav_bar = _HelpNavBar() vbox.pack_end(self._help_nav_bar, False, False, _DEFAULT_SPACING) for (signal_name, callback) in [ ('forward-clicked', self._forward_clicked_cb), ('reload-clicked', self._reload_clicked_cb), ('back-clicked', self._back_clicked_cb)]: self._help_nav_bar.connect(signal_name, callback) self._update_prev_next() def _stop_clicked_cb(self, source): self.destroy() def _forward_clicked_cb(self, source): self._help_widget.next_stage() self._update_prev_next() def _back_clicked_cb(self, source): self._help_widget.prev_stage() self._update_prev_next() def _reload_clicked_cb(self, source): self._help_widget.replay_stage() def _icon_file(self, icon_name): return os.path.join('icons', icon_name + '.svg') def _update_prev_next(self): hw = self._help_widget self._help_nav_bar.set_can_prev_stage(hw.can_prev_stage()) self._help_nav_bar.set_can_next_stage(hw.can_next_stage())
class _HelpWindow(_DialogWindow): # A dialog window to display the game instructions. def __init__(self): super(_HelpWindow, self).__init__('help-icon', _("Help")) offset = style.GRID_CELL_SIZE width = Gdk.Screen.width() - offset * 2 height = Gdk.Screen.height() - offset * 2 self.set_size_request(width, height) self._help_widget = HelpWidget(self._icon_file) self.content_vbox.pack_start(self._help_widget, True, True, 0) self._help_nav_bar = _HelpNavBar() self.content_vbox.pack_end(self._help_nav_bar, expand=False, fill=False, padding=style.DEFAULT_SPACING) for (signal_name, callback) in [ ('forward-clicked', self._forward_clicked_cb), ('reload-clicked', self._reload_clicked_cb), ('back-clicked', self._back_clicked_cb)]: self._help_nav_bar.connect(signal_name, callback) self._update_prev_next() def _forward_clicked_cb(self, source): self._help_widget.next_stage() self._update_prev_next() def _back_clicked_cb(self, source): self._help_widget.prev_stage() self._update_prev_next() def _reload_clicked_cb(self, source): self._help_widget.replay_stage() def _icon_file(self, icon_name): theme = Gtk.IconTheme.get_default() info = theme.lookup_icon(icon_name, 0, 0) return info.get_filename() def _update_prev_next(self): hw = self._help_widget self._help_nav_bar.set_can_prev_stage(hw.can_prev_stage()) self._help_nav_bar.set_can_next_stage(hw.can_next_stage())