示例#1
0
 def __init__(self):
     self.myfile = None
     Gtk.VBox.__init__(self)
     self.editor = WebKit.WebView()
     self.editor.set_editable(True)
     scroll = Gtk.ScrolledWindow()
     scroll.add(self.editor)
     
     self.toolbar = Gtk.Toolbar()
     self.hb_tb = Gtk.Box(spacing=3,orientation=Gtk.Orientation.HORIZONTAL)
     self.pack_start(scroll, True, True, 0)
     self.hb_tb.pack_start(self.toolbar, True, True, 0)
     self.pack_start(self.hb_tb, False, False, 0)
     save = Gtk.ToolButton(stock_id=Gtk.STOCK_SAVE)
     save.connect('clicked', self.on_save)
     self.toolbar.insert(save, 0)
     export = asm_customs.tool_button(join(asm_path.ICON_DIR, 'html-24.png'), "", self.on_export)
     self.toolbar.insert(export, 1)
     source = Gtk.ToggleToolButton(stock_id=Gtk.STOCK_FILE)
     source.connect('toggled', self.on_source)
     self.toolbar.insert(source, 2)
     printi = Gtk.ToolButton(stock_id=Gtk.STOCK_PRINT)
     printi.connect('clicked', self.on_print)
     self.toolbar.insert(printi, 3)
     #self.toolbar.insert(Gtk.SeparatorToolItem(), 3)
     undo = Gtk.ToolButton(stock_id=Gtk.STOCK_UNDO)
     undo.connect('clicked', self.on_action, 'Undo')
     self.toolbar.insert(undo, 4)
     redo = Gtk.ToolButton(stock_id=Gtk.STOCK_REDO)
     redo.connect('clicked', self.on_action, 'Redo')
     self.toolbar.insert(redo, 5)
     self.toolbar.insert(Gtk.SeparatorToolItem(), 6)
     fontname_item = Gtk.ToolItem.new()
     hb, self.fontname = asm_customs.button_fontnm()
     fontname_item.add(hb)
     self.fontname.connect('changed', self.on_select_fontnm)
     self.toolbar.insert(fontname_item, 7)
     fontsize_item = Gtk.ToolItem.new()
     hb, self.fontsize = asm_customs.button_fontsz()
     fontsize_item.add(hb)
     self.fontsize.connect('changed', self.on_select_fontsz)
     self.toolbar.insert(fontsize_item, 8)
     bold = Gtk.ToolButton(stock_id=Gtk.STOCK_BOLD)
     bold.connect('clicked', self.on_action, 'Bold')
     self.toolbar.insert(bold, 9)
     italic = Gtk.ToolButton(stock_id=Gtk.STOCK_ITALIC)
     italic.connect('clicked', self.on_action, 'Italic')
     self.toolbar.insert(italic, 10)
     underline = Gtk.ToolButton(stock_id=Gtk.STOCK_UNDERLINE)
     underline.connect('clicked', self.on_action, 'Underline')
     self.toolbar.insert(underline, 11)
     strikethrough = Gtk.ToolButton(stock_id=Gtk.STOCK_STRIKETHROUGH)
     strikethrough.connect('clicked', self.on_action, 'Strikethrough')
     self.toolbar.insert(strikethrough, 12)
     self.toolbar.insert(Gtk.SeparatorToolItem(), 13)
     color = Gtk.ToolButton(stock_id=Gtk.STOCK_SELECT_COLOR)
     color.connect('clicked', self.on_select_color)
     self.toolbar.insert(color, 14)
     self.toolbar.insert(Gtk.SeparatorToolItem(), 15)
     justifyleft = Gtk.ToolButton(stock_id=Gtk.STOCK_JUSTIFY_LEFT)
     justifyleft.connect('clicked', self.on_action, 'Justifyleft')
     self.toolbar.insert(justifyleft, 16)
     justifyright = Gtk.ToolButton(stock_id=Gtk.STOCK_JUSTIFY_RIGHT)
     justifyright.connect('clicked', self.on_action, 'Justifyright')
     self.toolbar.insert(justifyright, 17)
     justifycenter = Gtk.ToolButton(stock_id=Gtk.STOCK_JUSTIFY_CENTER)
     justifycenter.connect('clicked', self.on_action, 'Justifycenter')
     self.toolbar.insert(justifycenter, 18)
     justifyfull = Gtk.ToolButton(stock_id=Gtk.STOCK_JUSTIFY_FILL)
     justifyfull.connect('clicked', self.on_action, 'Justifyfull')
     self.toolbar.insert(justifyfull, 19)
     self.toolbar.insert(Gtk.SeparatorToolItem(), 20)
     orderedlist = asm_customs.tool_button(join(asm_path.ICON_DIR, 'OrderedList.png'), "", self.on_orderedlist)
     self.toolbar.insert(orderedlist, 21)
     unorderedlist = asm_customs.tool_button(join(asm_path.ICON_DIR, 'UnorderedList.png'), "", self.on_unorderedlist)
     self.toolbar.insert(unorderedlist, 22)
     self.toolbar.insert(Gtk.SeparatorToolItem(), 23)
     removeFormat = Gtk.ToolButton(stock_id=Gtk.STOCK_REMOVE)
     removeFormat.set_tooltip_text('حذف جميع التنسيقات')
     removeFormat.connect('clicked', self.on_removeFormat)
     self.toolbar.insert(removeFormat, 24)
示例#2
0
 def build(self, *a):
     Gtk.VPaned.__init__(self)
     vb = Gtk.VBox(False, 0)
     self.view_nasse = asm_customs.ViewClass()
     self.view_nasse_bfr = self.view_nasse.get_buffer()
     self.view_nasse.connect_after("populate-popup", asm_popup.populate_popup, self.parent)
     self.view_title_tag = self.view_nasse_bfr.create_tag("title")
     self.view_quran_tag = self.view_nasse_bfr.create_tag("quran")
     self.view_search_tag = self.view_nasse_bfr.create_tag("search")
     self.view_terms_tag = self.view_nasse_bfr.create_tag("terms")
     self.view_title_tag.set_property('foreground', self.parent.theme.color_tit) 
     self.view_title_tag.set_property('font', self.parent.theme.font_tit)
     self.view_quran_tag.set_property('foreground', self.parent.theme.color_qrn) 
     self.view_quran_tag.set_property("paragraph-background", self.parent.theme.color_bg_qrn)
     self.view_quran_tag.set_property('font', self.parent.theme.font_qrn)
     self.view_search_tag.set_property('background', self.parent.theme.color_fnd) 
     self.view_terms_tag.set_property('foreground', self.parent.theme.color_tit)
     scroll = Gtk.ScrolledWindow()
     scroll.set_shadow_type(Gtk.ShadowType.IN)
     scroll.add(self.view_nasse)
     self.pack1(scroll, True, False)
     hb = Gtk.HBox(False, 7)
     open_in_tab = Gtk.ToolButton(stock_id=Gtk.STOCK_FILE)
     open_in_tab.set_tooltip_text('افتح في لسان مستقل')
     open_in_tab.connect('clicked', self.open_new_tab)
     hb.pack_start(open_in_tab, False, False, 0)
     sav_result_btn = Gtk.ToolButton(stock_id=Gtk.STOCK_SAVE)
     sav_result_btn.set_tooltip_text('حفظ نتائج البحث الحالي باسم')
     hb.pack_start(sav_result_btn, False, False, 0)
     sav_result_btn.connect('clicked', self.sav_result_cb)
     self.sav_result_entry = Gtk.Entry()
     hb.pack_start(self.sav_result_entry, False, False, 0)
     self.search_result_btn = Gtk.ToolButton(stock_id=Gtk.STOCK_FIND)
     self.search_result_btn.set_tooltip_text('بحث في نتائج البحث')
     hb.pack_start(self.search_result_btn, False, False, 0)
     self.search_result_btn.connect('clicked', self.search_in_result)
     self.lab_n_result = Gtk.Label('عدد النتائج : 0')
     hb.pack_start(self.lab_n_result, False, False, 0)
     self.hb_stop = Gtk.HBox(False, 7)
     btn_stop = asm_customs.tool_button(join(asm_path.ICON_DIR, u'stp.png'), 'أوقف عملية البحث', self.stop_search)
     self.hb_stop.pack_start(btn_stop, False, False, 0)
     self.progress = Gtk.ProgressBar()
     self.hb_stop.pack_start(self.progress, True, True, 0)
     hb.pack_start(self.hb_stop, True, True, 0)
     vb.pack_start(hb, False, False, 5)
     
     self.store_results = Gtk.ListStore(int,int,str,str,int,int, int)
     self.tree_results = asm_customs.TreeIndex()
     self.tree_results.set_model(self.store_results)
     self.sel_result = self.tree_results.get_selection()
     self.tree_results.connect("cursor-changed", self.show_result)
     self.tree_results.set_grid_lines(Gtk.TreeViewGridLines.HORIZONTAL)
     raq = Gtk.TreeViewColumn('الرقم', Gtk.CellRendererText(), text=1)
     raq.set_max_width(80)
     self.tree_results.append_column(raq)
     books = Gtk.TreeViewColumn('الكتاب', Gtk.CellRendererText(), text=2)
     books.set_max_width((self.parent.get_size()[0]-300)/3)
     self.tree_results.append_column(books)
     elbab = Gtk.TreeViewColumn('الباب', Gtk.CellRendererText(), text=3)
     elbab.set_max_width(((self.parent.get_size()[0]-300)/3)*2)
     self.tree_results.append_column(elbab)
     elbaher = Gtk.TreeViewColumn('الجزء', Gtk.CellRendererText(), text=4)
     self.tree_results.append_column(elbaher)
     elbaher.set_max_width(80)
     elgharadh = Gtk.TreeViewColumn('الصفحة', Gtk.CellRendererText(), text=5)
     self.tree_results.append_column(elgharadh)
     elgharadh.set_max_width(80)
     elgharadh.set_expand(True)
     scroll = Gtk.ScrolledWindow()
     scroll.set_shadow_type(Gtk.ShadowType.IN)
     scroll.add(self.tree_results)
     scroll.set_size_request(-1, 200)
     vb.pack_start(scroll, True, True, 0)
     self.pack2(vb, False, True)
     self.show_all()