def __init__(self, activity, window_xid): self.parent_window_xid = window_xid url, title = get_help_url_and_title(activity) has_local_help = url is not None self._mode = _MODE_HELP if has_local_help else _MODE_SOCIAL_HELP Gtk.Window.__init__(self) box = Gtk.Box() box.set_orientation(Gtk.Orientation.VERTICAL) self.add(box) box.show() self.set_modal(True) self.set_decorated(False) self.set_position(Gtk.WindowPosition.CENTER_ALWAYS) self.set_border_width(style.LINE_WIDTH) self.set_has_resize_grip(False) width = Gdk.Screen.width() - style.GRID_CELL_SIZE * 2 height = Gdk.Screen.height() - style.GRID_CELL_SIZE * 2 self.set_size_request(width, height) self.connect('realize', self.__realize_cb) self.connect('hide', self.__hide_cb) self.connect('key-press-event', self.__key_press_event_cb) self._toolbar = Toolbar(title, has_local_help) box.pack_start(self._toolbar, False, False, 0) self._toolbar.show() self._toolbar.connect('stop-clicked', self.__stop_clicked_cb) self._toolbar.connect('mode-changed', self.__mode_changed_cb) self._browser = Browser(self._toolbar) scrolled_window = Gtk.ScrolledWindow() scrolled_window.add(self._browser.get_widget()) scrolled_window.show() box.pack_start(scrolled_window, True, True, 0) language = _get_current_language() self._help_state = None if has_local_help: self._help_url = self._browser.get_local_method() + \ self._get_help_file(language, url) self._social_help_uri = '{}/goto/{}'.format(get_social_help_server(), activity.get_bundle_id()) self._social_help_state = None self._load_mode(self._mode)
def __init__(self, activity, window_xid): self.parent_window_xid = window_xid url, title = get_help_url_and_title(activity) has_local_help = url is not None self._mode = _MODE_HELP if has_local_help else _MODE_SOCIAL_HELP Gtk.Window.__init__(self) box = Gtk.Box() box.set_orientation(Gtk.Orientation.VERTICAL) self.add(box) box.show() self.set_modal(True) self.set_decorated(False) self.set_position(Gtk.WindowPosition.CENTER_ALWAYS) self.set_border_width(style.LINE_WIDTH) self.set_has_resize_grip(False) width = Gdk.Screen.width() - style.GRID_CELL_SIZE * 2 height = Gdk.Screen.height() - style.GRID_CELL_SIZE * 2 self.set_size_request(width, height) self.connect('realize', self.__realize_cb) self.connect('hide', self.__hide_cb) self.connect('key-press-event', self.__key_press_event_cb) self._toolbar = Toolbar(title, has_local_help) box.pack_start(self._toolbar, False, False, 0) self._toolbar.show() self._toolbar.connect('stop-clicked', self.__stop_clicked_cb) self._toolbar.connect('mode-changed', self.__mode_changed_cb) self._browser = Browser(self._toolbar) scrolled_window = Gtk.ScrolledWindow() scrolled_window.add(self._browser.get_widget()) scrolled_window.show() box.pack_start(scrolled_window, True, True, 0) language = _get_current_language() self._help_state = None if has_local_help: self._help_url = self._browser.get_local_method() + \ self._get_help_file(language, url) self._social_help_uri = '{}/goto/{}'.format( get_social_help_server(), activity.get_bundle_id()) self._social_help_state = None self._load_mode(self._mode)
class ViewHelp(Gtk.Window): parent_window_xid = None def __init__(self, activity, window_xid): self.parent_window_xid = window_xid url, title = get_help_url_and_title(activity) has_local_help = url is not None self._mode = _MODE_HELP if has_local_help else _MODE_SOCIAL_HELP Gtk.Window.__init__(self) box = Gtk.Box() box.set_orientation(Gtk.Orientation.VERTICAL) self.add(box) box.show() self.set_modal(True) self.set_decorated(False) self.set_position(Gtk.WindowPosition.CENTER_ALWAYS) self.set_border_width(style.LINE_WIDTH) self.set_has_resize_grip(False) width = Gdk.Screen.width() - style.GRID_CELL_SIZE * 2 height = Gdk.Screen.height() - style.GRID_CELL_SIZE * 2 self.set_size_request(width, height) self.connect('realize', self.__realize_cb) self.connect('hide', self.__hide_cb) self.connect('key-press-event', self.__key_press_event_cb) self._toolbar = Toolbar(title, has_local_help) box.pack_start(self._toolbar, False, False, 0) self._toolbar.show() self._toolbar.connect('stop-clicked', self.__stop_clicked_cb) self._toolbar.connect('mode-changed', self.__mode_changed_cb) self._browser = Browser(self._toolbar) scrolled_window = Gtk.ScrolledWindow() scrolled_window.add(self._browser.get_widget()) scrolled_window.show() box.pack_start(scrolled_window, True, True, 0) language = _get_current_language() self._help_state = None if has_local_help: self._help_url = self._browser.get_local_method() + \ self._get_help_file(language, url) self._social_help_uri = '{}/goto/{}'.format(get_social_help_server(), activity.get_bundle_id()) self._social_help_state = None self._load_mode(self._mode) def __stop_clicked_cb(self, widget): self.destroy() def __key_press_event_cb(self, window, event): if event.keyval == Gdk.KEY_Escape: self.__stop_clicked_cb(None) def __mode_changed_cb(self, toolbar, mode): if mode == _MODE_HELP: self._social_help_state = self._browser.save_state() else: self._help_state = self._browser.save_state() self._mode = mode self._load_mode(self._mode) def _load_mode(self, mode): if mode == _MODE_HELP: self._browser.load_state(self._help_state, self._help_url) else: self._browser.load_state(self._social_help_state, self._social_help_uri) def __realize_cb(self, widget): self.set_type_hint(Gdk.WindowTypeHint.DIALOG) window = self.get_window() window.set_accept_focus(True) if self.parent_window_xid > 0: display = Gdk.Display.get_default() parent = GdkX11.X11Window.foreign_new_for_display( display, self.parent_window_xid) window.set_transient_for(parent) shell.get_model().push_modal() def __hide_cb(self, widget): shell.get_model().pop_modal() def _get_help_file(self, language, help_file): activity_path = _get_help_activity_path() # check if exist a page for the language selected # if not, use the default page path = os.path.join(activity_path, 'html', language, help_file) if not os.path.isfile(path): path = os.path.join(activity_path, 'html', help_file) return path
class ViewHelp(Gtk.Window): parent_window_xid = None def __init__(self, activity, window_xid): self.parent_window_xid = window_xid url, title = get_help_url_and_title(activity) has_local_help = url is not None self._mode = _MODE_HELP if has_local_help else _MODE_SOCIAL_HELP Gtk.Window.__init__(self) box = Gtk.Box() box.set_orientation(Gtk.Orientation.VERTICAL) self.add(box) box.show() self.set_modal(True) self.set_decorated(False) self.set_position(Gtk.WindowPosition.CENTER_ALWAYS) self.set_border_width(style.LINE_WIDTH) self.set_has_resize_grip(False) width = Gdk.Screen.width() - style.GRID_CELL_SIZE * 2 height = Gdk.Screen.height() - style.GRID_CELL_SIZE * 2 self.set_size_request(width, height) self.connect('realize', self.__realize_cb) self.connect('hide', self.__hide_cb) self.connect('key-press-event', self.__key_press_event_cb) self._toolbar = Toolbar(title, has_local_help) box.pack_start(self._toolbar, False, False, 0) self._toolbar.show() self._toolbar.connect('stop-clicked', self.__stop_clicked_cb) self._toolbar.connect('mode-changed', self.__mode_changed_cb) self._browser = Browser(self._toolbar) scrolled_window = Gtk.ScrolledWindow() scrolled_window.add(self._browser.get_widget()) scrolled_window.show() box.pack_start(scrolled_window, True, True, 0) language = _get_current_language() self._help_state = None if has_local_help: self._help_url = self._browser.get_local_method() + \ self._get_help_file(language, url) self._social_help_uri = '{}/goto/{}'.format( get_social_help_server(), activity.get_bundle_id()) self._social_help_state = None self._load_mode(self._mode) def __stop_clicked_cb(self, widget): self.destroy() def __key_press_event_cb(self, window, event): if event.keyval == Gdk.KEY_Escape: self.__stop_clicked_cb(None) def __mode_changed_cb(self, toolbar, mode): if mode == _MODE_HELP: self._social_help_state = self._browser.save_state() else: self._help_state = self._browser.save_state() self._mode = mode self._load_mode(self._mode) def _load_mode(self, mode): if mode == _MODE_HELP: self._browser.load_state(self._help_state, self._help_url) else: self._browser.load_state(self._social_help_state, self._social_help_uri) def __realize_cb(self, widget): self.set_type_hint(Gdk.WindowTypeHint.DIALOG) window = self.get_window() window.set_accept_focus(True) if self.parent_window_xid > 0: display = Gdk.Display.get_default() parent = GdkX11.X11Window.foreign_new_for_display( display, self.parent_window_xid) window.set_transient_for(parent) shell.get_model().push_modal() def __hide_cb(self, widget): shell.get_model().pop_modal() def _get_help_file(self, language, help_file): activity_path = _get_help_activity_path() # check if exist a page for the language selected # if not, use the default page path = os.path.join(activity_path, 'html', language, help_file) if not os.path.isfile(path): path = os.path.join(activity_path, 'html', help_file) return path