def __init__(self, activity): GObject.GObject.__init__(self) self._activity = activity self.properties = self._activity.area.tool self._text = DrawToolButton('text', activity.tool_group, _('Type')) self.insert(self._text, -1) self._text.connect('clicked', self.set_tool, self._ACTION_TEXT_NAME) separator = Gtk.SeparatorToolItem() separator.set_draw(True) self.insert(separator, -1) self._bold = ToggleToolButton('format-text-bold') self.insert(self._bold, -1) self._bold.show() self._bold.connect('clicked', self.__bold_bt_cb) self._italic = ToggleToolButton('format-text-italic') self.insert(self._italic, -1) self._italic.show() self._italic.connect('clicked', self.__italic_bt_cb) separator = Gtk.SeparatorToolItem() separator.set_draw(True) self.insert(separator, -1) self._font_size = FontSize() self.insert(self._font_size, -1) self._font_size_changed_id = self._font_size.connect( 'changed', self.__font_size_changed_cb) self._font_combo = FontComboBox() self._fonts_changed_id = self._font_combo.connect( 'changed', self.__font_changed_cb) fd = activity.area.get_font_description() font_name = fd.get_family() self._font_combo.set_font_name(font_name) self._font_size.set_font_size(int(fd.get_size() / Pango.SCALE)) tool_item = ToolComboBox(self._font_combo) self.insert(tool_item, -1) self.show_all()
def __init__(self, activity): GObject.GObject.__init__(self) self._activity = activity if not speech.supported: return self.is_paused = False self._cnf_client = GConf.Client.get_default() self.load_speech_parameters() self.sorted_voices = [i for i in speech.voices()] self.sorted_voices.sort(self.compare_voices) default = 0 for voice in self.sorted_voices: if voice[0] == speech.voice[0]: break default = default + 1 # Play button self.play_btn = ToggleToolButton('media-playback-start') self.play_btn.show() self.play_toggled_handler = self.play_btn.connect( 'toggled', self.play_cb) self.insert(self.play_btn, -1) self.play_btn.set_tooltip(_('Play / Pause')) # Stop button self.stop_btn = ToolButton('media-playback-stop') self.stop_btn.show() self.stop_btn.connect('clicked', self.stop_cb) self.stop_btn.set_sensitive(False) self.insert(self.stop_btn, -1) self.stop_btn.set_tooltip(_('Stop')) self.voice_combo = ComboBox() for voice in self.sorted_voices: self.voice_combo.append_item(voice, voice[0]) self.voice_combo.set_active(default) self.voice_combo.connect('changed', self.voice_changed_cb) combotool = ToolComboBox(self.voice_combo) self.insert(combotool, -1) combotool.show() speech.reset_cb = self.reset_buttons_cb speech.end_text_cb = self.reset_buttons_cb
def __init__(self, editor): Palette.__init__(self, _('Pronounce text during tile flip')) self.face = speak.face.View() toolbar = Gtk.HBox() toolbar.modify_bg(Gtk.StateType.NORMAL, style.COLOR_BLACK.get_gdk_color()) usespeak_play = ToolButton(icon_name='media-playback-start') usespeak_play.connect('clicked', lambda button: self.face.say(editor.get_text())) toolbar.pack_start(usespeak_play, False, False, 0) self.voices = speak.widgets.Voices(self.face) toolbar.pack_start(ToolComboBox(self.voices), True, True, 0) toolbar.show_all() self.set_content(toolbar)
def __init__(self): GObject.GObject.__init__(self) self.toolitems = [] readarticle_box = Gtk.VBox() readarticle_box.show() labeleb = Gtk.EventBox() labeleb.modify_bg(Gtk.StateType.NORMAL, Gdk.color_parse("#EEEEEE")) readarticle_box.pack_start(labeleb, False, False, 0) labeleb.show() self.articletitle = Gtk.Label() self.articletitle.set_justify(Gtk.Justification.CENTER) labeleb.add(self.articletitle) self.articletitle.show() vbox = Gtk.VBox() snap = ToolComboBox(label_text=_('Snap selection to:')) snap.combo.append_item(0, _("Nothing")) snap.combo.append_item(1, _("Sentences")) snap.combo.append_item(2, _("Paragraphs")) snap.combo.append_item(3, _("Sections")) snap.combo.set_active(1) vbox.pack_start(snap, False, False, 0) """ Create reading and editing panels """ self.readarticle = Reading_View() self.readarticle.set_size_request(Gdk.Screen.width() / 2, -1) self.readarticle.show() readarticle_box.pack_start(self.readarticle, True, True, 0) vbox.pack_start(readarticle_box, True, True, 0) self.pack_start(vbox, False, False, 0) self.editarticle = Editing_View() self.pack_start(self.editarticle, True, True, 0) self.editarticle.show() snap.combo.connect("changed", self.selection_mode_changed, None)
def __init__(self): Gtk.Toolbar.__init__(self) book_search_item = Gtk.ToolItem() self.search_entry = Gtk.Entry() self.search_entry.connect('activate', self.search_entry_activate_cb) width = int(Gdk.Screen.width() / 2) self.search_entry.set_size_request(width, -1) book_search_item.add(self.search_entry) self.search_entry.show() self.insert(book_search_item, -1) book_search_item.show() self._download = ToolButton('go-down') self._download.set_tooltip(_('Get Book')) self._download.props.sensitive = False self._download.connect('clicked', self._get_book_cb) self.insert(self._download, -1) self._download.show() self.format_combo = ComboBox() self.format_combo.connect('changed', self.format_changed_cb) self.format_combo.append_item('.djvu', 'Deja Vu') self.format_combo.append_item('_bw.pdf', 'B/W PDF') self.format_combo.append_item('.pdf', 'Color PDF') self.format_combo.append_item('.epub', 'EPUB') self.format_combo.set_active(0) self.format_combo.props.sensitive = False combotool = ToolComboBox(self.format_combo) self.insert(combotool, -1) combotool.show() self.search_entry.grab_focus()
def __init__(self, handle): activity.Activity.__init__(self, handle, True) self.max_participants = 1 # CHART_OPTIONS self._font_option = TITLE_FONT self.x_label = '' self.y_label = '' self.chart_color = utils.get_user_fill_color('str') self.chart_line_color = utils.get_user_stroke_color('str') self.current_chart = None self.charts_area = None self.chart_data = [] self.chart_type_buttons = [] self._font_options = { 'titleColor': '#000000', 'titleFont': 'Sans', 'titleFontSize': 12, 'axis': { 'tickFont': 'Sans', 'tickFontSize': 12, 'tickColor': '#000000', 'labelFontSize': 14, 'labelColor': '#666666', 'labelFont': 'Sans', 'lineColor': '#b3b3b3'}} # TOOLBARS self._labels_font = RadioToolButton() self._title_font = RadioToolButton() toolbarbox = ToolbarBox() activity_button = ActivityToolbarButton(self) activity_btn_toolbar = activity_button.page activity_btn_toolbar.title.connect('changed', self._set_chart_title) save_as_image = ToolButton('save-as-image') save_as_image.connect('clicked', self._save_as_image) save_as_image.set_tooltip(_('Save as image')) activity_btn_toolbar.insert(save_as_image, -1) save_as_image.show() import_stopwatch = ToolButton('import-stopwatch') import_stopwatch.connect('clicked', self.__import_stopwatch_cb) import_stopwatch.set_tooltip(_('Read StopWatch data')) activity_btn_toolbar.insert(import_stopwatch, -1) import_stopwatch.show() import_measure = ToolButton('import-measure') import_measure.set_tooltip(_('Read Measure data')) if utils.get_channels() == 1: import_measure.connect('clicked', self.__import_measure_cb, 1) else: import_measure.connect('clicked', self._measure_btn_clicked) self._create_measure_palette(import_measure) activity_btn_toolbar.insert(import_measure, -1) import_measure.show() toolbarbox.toolbar.insert(activity_button, 0) add_v = ToolButton('gtk-add') add_v.connect('clicked', self._add_value) add_v.set_tooltip(_('Add a value')) toolbarbox.toolbar.insert(add_v, -1) remove_v = ToolButton('gtk-remove') remove_v.connect('clicked', self._remove_value) remove_v.set_tooltip(_('Remove the selected value')) toolbarbox.toolbar.insert(remove_v, -1) self._remove_v = remove_v separator = Gtk.SeparatorToolItem() separator.set_draw(True) separator.set_expand(False) toolbarbox.toolbar.insert(separator, -1) # We create two sets: one for the main toolbar and one for the # chart toolbar. We choose which set to use based on the # screen width. self._create_chart_buttons(toolbarbox.toolbar) self._chart_button = ToolbarButton(icon_name='vbar') chart_toolbar = Gtk.Toolbar() self._create_chart_buttons(chart_toolbar) self._chart_button.props.page = chart_toolbar chart_toolbar.show_all() toolbarbox.toolbar.insert(self._chart_button, -1) separator = Gtk.SeparatorToolItem() separator.set_draw(True) separator.set_expand(False) toolbarbox.toolbar.insert(separator, -1) self._options_button = ToolbarButton(icon_name='preferences-system') options_toolbar = Gtk.Toolbar() self.chart_color_btn = ColorToolButton() self.chart_color_btn.set_color(_COLOR1) self.chart_color_btn.set_title(_('Chart Color')) options_toolbar.insert(self.chart_color_btn, -1) GObject.timeout_add(1000, self._connect_color_btn, self.chart_color_btn, self._set_chart_color) self.line_color_btn = ColorToolButton() self.line_color_btn.set_color(_COLOR2) self.line_color_btn.set_title(_('Line Color')) options_toolbar.insert(self.line_color_btn, -1) GObject.timeout_add(1000, self._connect_color_btn, self.line_color_btn, self._set_chart_line_color) separator = Gtk.SeparatorToolItem() separator.set_draw(True) separator.set_expand(False) options_toolbar.insert(separator, -1) h_label_icon = Icon(icon_name='hlabel') h_label_tool_item = Gtk.ToolItem() h_label_tool_item.add(h_label_icon) options_toolbar.insert(h_label_tool_item, -1) self.h_label = Entry(_('Horizontal label...')) self.h_label.entry.connect('changed', self._set_h_label) options_toolbar.insert(self.h_label, -1) separator = Gtk.SeparatorToolItem() separator.set_draw(False) separator.set_expand(False) options_toolbar.insert(separator, -1) v_label_icon = Icon(icon_name='vlabel') v_label_tool_item = Gtk.ToolItem() v_label_tool_item.add(v_label_icon) options_toolbar.insert(v_label_tool_item, -1) self.v_label = Entry(_('Vertical label...')) self.v_label.entry.connect('changed', self._set_v_label) options_toolbar.insert(self.v_label, -1) self._options_button.props.page = options_toolbar options_toolbar.show_all() toolbarbox.toolbar.insert(self._options_button, -1) text_toolbar_btn = ToolbarButton() text_toolbar_btn.props.icon_name = 'format-text' text_toolbar_btn.props.label = _('Text') toolbarbox.toolbar.insert(text_toolbar_btn, -1) self._text_options_btn = text_toolbar_btn texttoolbar = Gtk.Toolbar() self.font_name_combo = FontComboBox() self.font_name_combo.set_font_name('Sans') def set_font_name(w): self._set_chart_font_options(font=w.get_font_name()) self.font_name_combo.connect("changed", set_font_name) texttoolbar.insert(ToolComboBox(self.font_name_combo), -1) self.font_size = FontSize() def set_font_size(w): self._set_chart_font_options(size=w.get_font_size()) self.font_size.connect("changed", set_font_size) texttoolbar.insert(self.font_size, -1) self.text_color_btn = ColorToolButton() self.text_color_btn.set_color(style.COLOR_BLACK.get_gdk_color()) self.text_color_btn.set_title(_('Font Color')) texttoolbar.insert(self.text_color_btn, -1) GObject.timeout_add(1000, self._connect_color_btn, self.text_color_btn, self._set_text_color) # self._title_font created in the top of the file self._title_font.connect('clicked', self._set_font_option, TITLE_FONT) self._title_font.set_tooltip(_('Title font')) self._title_font.props.icon_name = 'title-font' op_group = self._title_font texttoolbar.insert(self._title_font, 0) # self._labels_font created in the top of the file self._labels_font.connect('clicked', self._set_font_option, LABELS_FONT) self._labels_font.set_tooltip(_('Labels font')) self._labels_font.props.icon_name = 'labels-font' self._labels_font.props.group = op_group texttoolbar.insert(self._labels_font, 1) tick_font = RadioToolButton() tick_font.connect('clicked', self._set_font_option, TICK_FONT) tick_font.set_tooltip(_('Tick font')) tick_font.props.icon_name = 'tick-font' tick_font.props.group = op_group texttoolbar.insert(tick_font, 2) separator = Gtk.SeparatorToolItem() texttoolbar.insert(separator, 3) text_toolbar_btn.props.page = texttoolbar texttoolbar.show_all() separator = Gtk.SeparatorToolItem() separator.set_draw(True) separator.set_expand(False) toolbarbox.toolbar.insert(separator, -1) self._fullscreen_button = ToolButton('view-fullscreen') self._fullscreen_button.set_tooltip(_("Fullscreen")) self._fullscreen_button.props.accelerator = '<Alt>Return' self._fullscreen_button.connect('clicked', self.__fullscreen_cb) toolbarbox.toolbar.insert(self._fullscreen_button, -1) charthelp.create_help(toolbarbox.toolbar) separator = Gtk.SeparatorToolItem() separator.set_draw(False) separator.set_expand(True) toolbarbox.toolbar.insert(separator, -1) stopbtn = StopButton(self) toolbarbox.toolbar.insert(stopbtn, -1) self.set_toolbar_box(toolbarbox) # CANVAS paned = Gtk.HPaned() box = Gtk.VBox() self.box = box # Set the info box width to 1/3 of the screen: def size_allocate_cb(widget, allocation): paned.disconnect(self._setup_handle) box_width = allocation.width / 3 box.set_size_request(box_width, -1) self._setup_handle = paned.connect('size_allocate', size_allocate_cb) scroll = Gtk.ScrolledWindow() scroll.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self.labels_and_values = ChartData(self) scroll.add(self.labels_and_values) self.labels_and_values.connect('label-changed', self._label_changed) self.labels_and_values.connect('value-changed', self._value_changed) box.pack_start(scroll, True, True, 0) liststore_toolbar = Gtk.Toolbar() move_up = ToolButton('go-up') move_up.set_tooltip(_('Move up')) move_up.connect('clicked', self._move_up) move_down = ToolButton('go-down') move_down.set_tooltip(_('Move down')) move_down.connect('clicked', self._move_down) liststore_toolbar.insert(move_up, 0) liststore_toolbar.insert(move_down, 1) box.pack_end(liststore_toolbar, False, False, 0) paned.add1(box) # CHARTS AREA eventbox = Gtk.EventBox() self.charts_area = ChartArea(self) eventbox.modify_bg(Gtk.StateType.NORMAL, _WHITE) eventbox.add(self.charts_area) self._notebook = Gtk.Notebook() self._notebook.set_property('show-tabs', False) self._notebook.append_page(eventbox, Gtk.Label()) # EMPTY WIDGETS empty_widgets = Gtk.EventBox() empty_widgets.modify_bg(Gtk.StateType.NORMAL, style.COLOR_WHITE.get_gdk_color()) vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) mvbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) vbox.pack_start(mvbox, True, False, 0) image_icon = Icon(pixel_size=style.LARGE_ICON_SIZE, icon_name='chart', stroke_color=style.COLOR_BUTTON_GREY.get_svg(), fill_color=style.COLOR_TRANSPARENT.get_svg()) mvbox.pack_start(image_icon, False, False, style.DEFAULT_PADDING) label = Gtk.Label('<span foreground="%s"><b>%s</b></span>' % (style.COLOR_BUTTON_GREY.get_html(), _('No data'))) label.set_use_markup(True) mvbox.pack_start(label, False, False, style.DEFAULT_PADDING) hbox = Gtk.Box() open_image_btn = Gtk.Button() open_image_btn.connect('clicked', self._add_value) add_image = Gtk.Image.new_from_stock(Gtk.STOCK_ADD, Gtk.IconSize.BUTTON) buttonbox = Gtk.Box() buttonbox.pack_start(add_image, False, True, 0) buttonbox.pack_end(Gtk.Label(_('Add a value')), True, True, 5) open_image_btn.add(buttonbox) hbox.pack_start(open_image_btn, True, False, 0) mvbox.pack_start(hbox, False, False, style.DEFAULT_PADDING) empty_widgets.add(vbox) empty_widgets.show_all() self._notebook.append_page(empty_widgets, Gtk.Label()) paned.add2(self._notebook) self.set_canvas(paned) self.charts_area.connect('size_allocate', self._chart_size_allocate) self.show_all() Gdk.Screen.get_default().connect('size-changed', self._configure_cb) self._configure_cb()
def __init__(self, activity): GObject.GObject.__init__(self) self.activity = activity self.wiki = BookView(book.wiki, _('Wiki'), _('Wiki articles'), False) self.custom = BookView(book.custom, _('Custom'), _('Custom articles'), True) # stubs for empty articles def create_stub(icon_name, head_text, tail_text): head_label = Gtk.Label(label=head_text) head_label_a = Gtk.Alignment.new(0.5, 1, 0, 0) head_label_a.add(head_label) icon = Icon(icon_name=icon_name, icon_size=Gtk.IconSize.LARGE_TOOLBAR) tail_label = Gtk.Label(label=tail_text) tail_label_a = Gtk.Alignment.new(0.5, 0, 0, 0) tail_label_a.add(tail_label) stub = Gtk.VBox() stub.pack_start(head_label_a, True, True, 0) stub.pack_start(icon, False, False, 0) stub.pack_start(tail_label_a, True, True, 0) return stub wiki_stub = create_stub('white-search', _('To download Wiki article\ntype "Article name" and click'), _('button on the top "Library" panel')) custom_stub = create_stub('add', _('To create custom article click'), _('button on the left "Custom" panel')) # articles viewers lang_code = locale.getdefaultlocale()[0] or 'en_US' wiki_prefix = lang_code[0:2] + '.' language_order = 0 order = 0 search_box = Gtk.HBox() self.wikimenu = ToolComboBox(label_text=_('Get article from:')) for i in sorted(WIKI.keys()): self.wikimenu.combo.append_item(WIKI[i], i) if WIKI[i].startswith(wiki_prefix): language_order = order order = order + 1 self.wikimenu.combo.set_active(language_order) search_box.pack_start(self.wikimenu, False, False, 0) self.searchentry = Gtk.Entry() self.searchentry.set_size_request(int(Gdk.Screen.width() / 6), -1) self.searchentry.set_text(_("Article name")) self.searchentry.select_region(0, -1) self.searchentry.connect('activate', self._search_activate_cb) search_box.pack_start(self.searchentry, True, True, 0) search_box.show_all() self.searchbutton = Gtk.Button(label=_('Search')) self.searchbutton.connect('clicked', self._search_clicked_cb) search_box.pack_start(self.searchbutton, False, False, 0) wiki_widget = Reading_View() wiki = Gtk.Notebook() wiki.props.show_border = False wiki.props.show_tabs = False wiki.append_page(wiki_stub, None) wiki.append_page(wiki_widget, None) self.progress = Gtk.Label() #self.progress.set_size_request(-1, style.SMALL_ICON_SIZE+4) #progress_box = Gtk.HBox() #progress_box.pack_start(Gtk.HSeparator(, True, True, 0), False) #progress_box.pack_start(self.progress, False) wiki_box = Gtk.VBox() wiki_box.pack_start(search_box, False, False, 0) wiki_box.pack_start(wiki, True, True, 0) wiki_box.pack_start(self.progress, False, False, 0) logging.debug(int(Gdk.Screen.width() * 3 / 4.)) wiki_box.set_size_request(int(Gdk.Screen.width() * 3 / 4.), int((Gdk.Screen.height() - \ style.GRID_CELL_SIZE) / 2)) custom_widget = Reading_View() custom = Gtk.Notebook() custom.props.show_border = False custom.props.show_tabs = False custom.append_page(custom_stub, None) custom.append_page(custom_widget, None) # custom.set_size_request(Gdk.Screen.width()/4*3, # Gdk.Screen.height()/2 - 55) custom.set_size_request(int(Gdk.Screen.width() * 3 / 4.), int((Gdk.Screen.height() - \ style.GRID_CELL_SIZE) / 2)) # workspace articles_box = Gtk.HBox() articles_box.pack_start(self.wiki, True, True, 0) articles_box.pack_start(Gtk.VSeparator(), False, False, 0) articles_box.pack_start(wiki_box, False, False, 0) custom_box = Gtk.HBox() custom_box.pack_start(self.custom, True, True, 0) custom_box.pack_start(Gtk.VSeparator(), False, False, 0) custom_box.pack_start(custom, False, False, 0) workspace = Gtk.VBox() workspace.pack_start(articles_box, False, False, 0) workspace.pack_start(custom_box, False, False, 0) workspace.show_all() self.add(workspace) # init components book.wiki.connect('article-selected', self._article_selected_cb, wiki_widget, [wiki, custom]) book.wiki.connect('article-deleted', self._article_deleted_cb, [wiki, custom]) book.custom.connect('article-selected', self._article_selected_cb, custom_widget, [custom, wiki]) book.custom.connect('article-deleted', self._article_deleted_cb, [custom, wiki]) self._article_selected_cb(book.wiki, book.wiki.article, wiki_widget, [wiki, custom]) self._article_selected_cb(book.custom, book.custom.article, custom_widget, [custom, wiki]) self.connect('map', self._map_cb)
def __init__(self): Gtk.Toolbar.__init__(self) self.activity = None self._speech = SpeechManager() self._voices = self._speech.get_all_voices() # a dictionary locale = os.environ.get('LANG', '') language_location = locale.split('.', 1)[0].lower() language = language_location.split('_')[0] # if the language is es but not es_es default to es_la (latin voice) if language == 'es' and language_location != 'es_es': language_location = 'es_la' self._voice = 'en_us' if language_location in self._voices: self._voice = language_location elif language in self._voices: self._voice = language voice_names = [] for language, name in self._voices.items(): voice_names.append((language, name)) voice_names.sort() # Play button Image play_img = Gtk.Image() play_img.show() play_img.set_from_icon_name('media-playback-start', Gtk.IconSize.LARGE_TOOLBAR) # Pause button Image pause_img = Gtk.Image() pause_img.show() pause_img.set_from_icon_name('media-playback-pause', Gtk.IconSize.LARGE_TOOLBAR) # Play button self.play_button = ToggleToolButton('media-playback-start') self.play_button.show() self.play_button.connect('toggled', self._play_toggled_cb, [play_img, pause_img]) self.insert(self.play_button, -1) self.play_button.set_tooltip(_('Play / Pause')) combo = ComboBox() which = 0 for pair in voice_names: language, name = pair combo.append_item(language, name) if language == self._voice: combo.set_active(which) which += 1 combo.connect('changed', self._voice_changed_cb) combotool = ToolComboBox(combo) self.insert(combotool, -1) combotool.show() self.pitchadj = Gtk.Adjustment(0, -100, 100, 1, 10, 0) pitchbar = Gtk.HScale() pitchbar.set_adjustment(self.pitchadj) pitchbar.set_draw_value(False) # pitchbar.set_update_policy(Gtk.UpdatePolicy.ALWAYS) pitchbar.set_size_request(150, 15) pitchtool = Gtk.ToolItem() pitchtool.add(pitchbar) pitchtool.show() self.insert(pitchtool, -1) pitchbar.show() self.rateadj = Gtk.Adjustment(0, -100, 100, 1, 10, 0) ratebar = Gtk.HScale() ratebar.set_adjustment(self.rateadj) ratebar.set_draw_value(False) # ratebar.set_update_policy(Gtk.UpdatePolicy.ALWAYS) ratebar.set_size_request(150, 15) ratetool = Gtk.ToolItem() ratetool.add(ratebar) ratetool.show() self.insert(ratetool, -1) ratebar.show()
def __init__(self, abiword_canvas): GObject.GObject.__init__(self) self.font_name_combo = FontComboBox() self.font_name_combo.set_font_name('Sans') self._fonts_changed_id = self.font_name_combo.connect( 'changed', self._font_changed_cb, abiword_canvas) self._abi_handler = abiword_canvas.connect('font-family', self._font_family_cb) self.insert(ToolComboBox(self.font_name_combo), -1) self.font_size = FontSize() self._abi_handler = abiword_canvas.connect('font-size', self._font_size_cb) self._changed_id = self.font_size.connect( 'changed', self._font_size_changed_cb, abiword_canvas) self.insert(self.font_size, -1) bold = ToggleToolButton('format-text-bold') bold.set_tooltip(_('Bold')) bold.props.accelerator = '<Ctrl>B' bold_id = bold.connect('clicked', lambda sender: abiword_canvas.toggle_bold()) abiword_canvas.connect('bold', lambda abi, b: self._setToggleButtonState(bold, b, bold_id)) self.insert(bold, -1) italic = ToggleToolButton('format-text-italic') italic.set_tooltip(_('Italic')) italic.props.accelerator = '<Ctrl>I' italic_id = italic.connect('clicked', lambda sender: abiword_canvas.toggle_italic()) abiword_canvas.connect('italic', lambda abi, b: self._setToggleButtonState(italic, b, italic_id)) self.insert(italic, -1) underline = ToggleToolButton('format-text-underline') underline.set_tooltip(_('Underline')) underline.props.accelerator = '<Ctrl>U' underline_id = underline.connect('clicked', lambda sender: abiword_canvas.toggle_underline()) abiword_canvas.connect('underline', lambda abi, b: self._setToggleButtonState(underline, b, underline_id)) self.insert(underline, -1) color = ColorToolButton() color.connect('notify::color', self._text_color_cb, abiword_canvas) tool_item = Gtk.ToolItem() tool_item.add(color) self.insert(tool_item, -1) abiword_canvas.connect( 'color', lambda abi, r, g, b: color.set_color(Gdk.Color(r * 256, g * 256, b * 256))) # MAGIC NUMBER WARNING: Secondary toolbars are not a standard height? self.set_size_request(-1, style.GRID_CELL_SIZE) def append_align(icon_name, tooltip, do_abi_cb, style_name, button, menu_box): menu_item = AbiMenuItem(abiword_canvas, style_name, do_abi_cb, icon_name, tooltip, button) menu_box.append_item(menu_item) menu_item.show() self._aligment_btn = ToolButton(icon_name='format-justify-left') self._aligment_btn.props.tooltip = _('Choose alignment') self._aligment_btn.props.hide_tooltip_on_click = False self._aligment_btn.palette_invoker.props.toggle_palette = True menu_box = PaletteMenuBox() self._aligment_btn.props.palette.set_content(menu_box) menu_box.show() append_align('format-justify-left', _('Left justify'), abiword_canvas.align_left, 'left-align', self._aligment_btn, menu_box) append_align('format-justify-center', _('Center justify'), abiword_canvas.align_center, 'center-align', self._aligment_btn, menu_box) append_align('format-justify-right', _('Right justify'), abiword_canvas.align_right, 'right-align', self._aligment_btn, menu_box) append_align('format-justify-fill', _('Fill justify'), abiword_canvas.align_justify, 'justify-align', self._aligment_btn, menu_box) self.insert(self._aligment_btn, -1) self.show_all()
def __init__(self, handle): """Set up the Weather activity.""" activity.Activity.__init__(self, handle) # we do not have collaboration features # make the share option insensitive self.max_participants = 1 self.wind_scale = 'm/s' self.pressure_scale = 'hPa' self.humidity_scale = '%' self.cloud_scale = '%' self.temp_scale = 'K' self.input = '' self.selected_city = None self.temp_scales = { 'Kelvin': 'K', 'Celcius': u'\u00b0C'.encode('utf-8'), 'Farenheit': u'\u00b0F'.encode('utf-8') } # view toolbar view_toolbar = Gtk.Toolbar() toolbar_box = ToolbarBox() activity_button = ActivityToolbarButton(self) toolbar_box.toolbar.insert(activity_button, 0) activity_button.show() temp_label = Gtk.Label(_('Temperature:')) temp_label.show() temp_label_item = Gtk.ToolItem() temp_label_item.add(temp_label) temp_label_item.show() temp_scale_store = Gtk.ListStore(str) for key in self.temp_scales.keys(): temp_scale_store.append([key]) self.temp_scale_combo = Gtk.ComboBox.new_with_model(temp_scale_store) renderer_text = Gtk.CellRendererText() self.temp_scale_combo.pack_start(renderer_text, True) self.temp_scale_combo.add_attribute(renderer_text, 'text', 0) self.temp_scale_combo.connect('changed', self.temp_scale_combo_toggled) self.temp_scale_combo.show() temp_scale_combo_item = ToolComboBox(self.temp_scale_combo) temp_scale_combo_item.show() view_toolbar.insert(temp_label_item, -1) view_toolbar.insert(temp_scale_combo_item, -1) view_toolbar.show() view_toolbar_button = ToolbarButton(icon_name='toolbar-view', page=view_toolbar) toolbar_box.toolbar.insert(view_toolbar_button, -1) view_toolbar_button.show() # toolbar separator = Gtk.SeparatorToolItem() toolbar_box.toolbar.insert(separator, -1) separator.set_draw(False) separator.set_expand(True) separator.show() self.search_entry = iconentry.IconEntry() self.search_entry.connect('key-press-event', self.entry_key_press_cb) self.search_entry.connect('icon-press', self.refresh) self.search_entry.show() self.search_entry_item = Gtk.ToolItem() self.search_entry_item.set_size_request(SCREEN_WIDTH / 3, -1) self.search_entry_item.add(self.search_entry) toolbar_box.toolbar.insert(self.search_entry_item, -1) self.search_entry_item.show() self.back_button = ToolButton('go-previous-paired') self.back_button.connect('clicked', self.back_button_clicked) self.back_button.set_sensitive(False) self.back_button.set_tooltip(_('Back')) toolbar_box.toolbar.insert(self.back_button, -1) self.back_button.show() self.forecast_button = ToolButton('go-next-paired') self.forecast_button.connect('clicked', self.forecast_button_clicked) self.forecast_button.set_sensitive(False) self.forecast_button.set_tooltip(_('Forecast')) toolbar_box.toolbar.insert(self.forecast_button, -1) self.forecast_button.show() separator = Gtk.SeparatorToolItem() toolbar_box.toolbar.insert(separator, -1) separator.set_draw(False) separator.set_expand(True) separator.show() stop_button = StopButton(self) toolbar_box.toolbar.insert(stop_button, -1) stop_button.show() self.set_toolbar_box(toolbar_box) toolbar_box.show() # set up screen self.search_screen = searchscreen.SearchScreen(self) self.forecast_screen = forecastscreen.ForecastScreen(self) self.screen = self.search_screen howto_label = Gtk.Label() howto_label.set_justify(Gtk.Justification.CENTER) howto_label.set_markup(howto) howto_label.show() world_image = Gtk.Image() world_image.modify_bg(Gtk.StateType.NORMAL, Gdk.Color.parse(GREY)[1]) pixbuf = GdkPixbuf.Pixbuf.new_from_file('world.svg') scaled_pixbuf = pixbuf.scale_simple(SCREEN_WIDTH, SCREEN_HEIGHT - 170, GdkPixbuf.InterpType.BILINEAR) world_image.set_from_pixbuf(scaled_pixbuf) world_image.show() box = Gtk.Box() box.set_orientation(Gtk.Orientation.VERTICAL) box.pack_start(howto_label, expand=True, fill=False, padding=0) box.pack_start(world_image, expand=True, fill=True, padding=0) box.show() self.set_canvas(box) self.temp_scale_combo.set_active(1) self.search_entry.grab_focus()
def __init__(self): Gtk.Toolbar.__init__(self) voicebar = Gtk.Toolbar() self.activity = None self.sorted_voices = [i for i in speech.voices()] self.sorted_voices.sort(self.compare_voices) default = 0 for voice in self.sorted_voices: if voice[0] == 'default': break default = default + 1 # Play button Image play_img = Gtk.Image() play_img.show() play_img.set_from_icon_name('media-playback-start', Gtk.IconSize.LARGE_TOOLBAR) # Pause button Image pause_img = Gtk.Image() pause_img.show() pause_img.set_from_icon_name('media-playback-pause', Gtk.IconSize.LARGE_TOOLBAR) # Play button self.play_btn = ToggleToolButton('media-playback-start') self.play_btn.show() self.play_btn.connect('toggled', self.play_cb, [play_img, pause_img]) self.insert(self.play_btn, -1) self.play_btn.set_tooltip(_('Play / Pause')) self.voice_combo = ComboBox() self.voice_combo.connect('changed', self.voice_changed_cb) for voice in self.sorted_voices: self.voice_combo.append_item(voice, voice[0]) self.voice_combo.set_active(default) combotool = ToolComboBox(self.voice_combo) self.insert(combotool, -1) combotool.show() self.pitchadj = Gtk.Adjustment(0, -100, 100, 1, 10, 0) pitchbar = Gtk.HScale() pitchbar.set_adjustment(self.pitchadj) pitchbar.set_draw_value(False) # pitchbar.set_update_policy(Gtk.UpdatePolicy.ALWAYS) pitchbar.set_size_request(150,15) pitchtool = Gtk.ToolItem() pitchtool.add(pitchbar) pitchtool.show() self.insert(pitchtool, -1) pitchbar.show() self.rateadj = Gtk.Adjustment(0, -100, 100, 1, 10, 0) ratebar = Gtk.HScale() ratebar.set_adjustment(self.rateadj) ratebar.set_draw_value(False) #ratebar.set_update_policy(Gtk.UpdatePolicy.ALWAYS) ratebar.set_size_request(150,15) ratetool = Gtk.ToolItem() ratetool.add(ratebar) ratetool.show() self.insert(ratetool, -1) ratebar.show()
def build_toolbox(self): self.newcreditbtn = ToolButton('row-insert-credit') self.newcreditbtn.set_tooltip(_("New Credit")) self.newcreditbtn.props.accelerator = '<Ctrl>A' self.newcreditbtn.connect('clicked', self.register.newcredit_cb) self.newdebitbtn = ToolButton('row-insert-debit') self.newdebitbtn.set_tooltip(_("New Debit")) self.newdebitbtn.props.accelerator = '<Ctrl>D' self.newdebitbtn.connect('clicked', self.register.newdebit_cb) self.eraseitembtn = ToolButton('row-remove-transaction') self.eraseitembtn.set_tooltip(_("Erase Transaction")) self.eraseitembtn.props.accelerator = '<Ctrl>E' self.eraseitembtn.connect('clicked', self.register.eraseitem_cb) transactionbar = Gtk.Toolbar() transactionbar.insert(self.newcreditbtn, -1) transactionbar.insert(self.newdebitbtn, -1) transactionbar.insert(self.eraseitembtn, -1) self.thisperiodbtn = ToolButton('go-down') self.thisperiodbtn.props.accelerator = '<Ctrl>Down' self.thisperiodbtn.connect('clicked', self.thisperiod_cb) self.prevperiodbtn = ToolButton('go-previous-paired') self.prevperiodbtn.props.accelerator = '<Ctrl>Left' self.prevperiodbtn.connect('clicked', self.prevperiod_cb) self.nextperiodbtn = ToolButton('go-next-paired') self.nextperiodbtn.props.accelerator = '<Ctrl>Right' self.nextperiodbtn.connect('clicked', self.nextperiod_cb) periodsep = Gtk.SeparatorToolItem() periodsep.set_expand(True) periodsep.set_draw(False) periodlabel = Gtk.Label(label=_('Period: ')) periodlabelitem = Gtk.ToolItem() periodlabelitem.add(periodlabel) periodcombo = Gtk.ComboBoxText() periodcombo.append_text(_('Day')) periodcombo.append_text(_('Week')) periodcombo.append_text(_('Month')) periodcombo.append_text(_('Year')) periodcombo.append_text(_('Forever')) periodcombo.set_active(2) periodcombo.connect('changed', self.period_changed_cb) perioditem = ToolComboBox(periodcombo) view_tool_group = None registerbtn = RadioToolButton() registerbtn.props.icon_name = 'view-list' registerbtn.props.label = _('Register') registerbtn.set_tooltip(_("Register")) registerbtn.props.group = view_tool_group view_tool_group = registerbtn registerbtn.props.accelerator = '<Ctrl>1' registerbtn.connect('clicked', self.register_cb) budgetbtn = RadioToolButton() budgetbtn.props.icon_name = 'budget' budgetbtn.props.label = _('Budget') budgetbtn.set_tooltip(_("Budget")) budgetbtn.props.group = view_tool_group budgetbtn.props.accelerator = '<Ctrl>2' budgetbtn.connect('clicked', self.budget_cb) chartbtn = RadioToolButton() chartbtn.props.icon_name = 'chart' chartbtn.props.label = _('Chart') chartbtn.set_tooltip(_("Chart")) chartbtn.props.group = view_tool_group chartbtn.props.accelerator = '<Ctrl>3' chartbtn.connect('clicked', self.chart_cb) viewbar = Gtk.Toolbar() viewbar.insert(registerbtn, -1) viewbar.insert(budgetbtn, -1) viewbar.insert(chartbtn, -1) helpbtn = ToggleToolButton('help') helpbtn.set_active(True) helpbtn.set_tooltip(_("Show Help")) helpbtn.connect('clicked', self.help_cb) self.toolbar_box = ToolbarBox() activity_button = ActivityToolbarButton(self) self.toolbar_box.toolbar.insert(activity_button, 0) activity_button.show() transaction_toolbar_button = ToolbarButton(page=transactionbar, icon_name='transaction') transactionbar.show_all() view_toolbar_button = ToolbarButton(page=viewbar, icon_name='toolbar-view') viewbar.show_all() self.toolbar_box.toolbar.insert(transaction_toolbar_button, -1) transaction_toolbar_button.show() self.toolbar_box.toolbar.view = view_toolbar_button self.toolbar_box.toolbar.insert(view_toolbar_button, -1) view_toolbar_button.show() separator = Gtk.SeparatorToolItem() separator.set_draw(True) self.toolbar_box.toolbar.insert(separator, -1) self.toolbar_box.toolbar.insert(periodlabelitem, -1) self.toolbar_box.toolbar.insert(perioditem, -1) self.toolbar_box.toolbar.insert(self.prevperiodbtn, -1) self.toolbar_box.toolbar.insert(self.nextperiodbtn, -1) self.toolbar_box.toolbar.insert(self.thisperiodbtn, -1) separator = Gtk.SeparatorToolItem() separator.props.draw = False separator.set_expand(True) self.toolbar_box.toolbar.insert(separator, -1) self.toolbar_box.toolbar.insert(helpbtn, -1) self.toolbar_box.toolbar.insert(StopButton(self), -1) self.set_toolbar_box(self.toolbar_box) self.toolbar_box.show_all()