Utilisateur:Nemoi/test
ISBN 23131313
Bla[modifier | modifier le code]
auie aui, aaa,
(ISBN 21212121[à vérifier : ISBN invalide])
Utilisateur:Nemoi/test
test…
WHEREISPYWIKIPEDIA = "/home/dieu/"
from gettext import gettext as _
import os import gtk import gedit
os.chdir(WHEREISPYWIKIPEDIA+"pywikipedia/") import wikipedia as wp
ui_str = """ <ui> <menubar name="MenuBar"> <menu name="FileMenu" action="File"> <placeholder name="FileOps_4">
<separator/>
<menuitem name="wikiExport" action="wikiExport"/> <menuitem name="wikiImport" action="wikiImport"/> </placeholder> </menu> <menu name="Wikipedia" action="MenuWiki"> <menuitem name="wikiFormatnum" action="wikiFormatnum"/> </menu> </menubar> </ui> """
class WikiTools: # activation def __init__(self, plugin, window): self._window = window self._plugin = plugin
self._insert_menu()
def deactivate(self): self._window = None self._plugin = None
self._action_group = None
self._remove_menu()
def update_ui(self): self._action_group.set_sensitive(self._window.get_active_document() != None)
# menus def _insert_menu(self): manager = self._window.get_ui_manager()
self._action_group = gtk.ActionGroup("Wiki")
self._action_group.add_actions([("wikiExport", None, _("Export..."), None, _("upload the text on wikipedia"), self.on_wikiExport_activate)]) self._action_group.add_actions([("wikiImport", None, _("Import..."), None, _("import the text from wikipedia"), self.on_wikiImport_activate)])
self._action_group.add_actions([("MenuWiki", None, _("WikiTools"), None, _("Groups usefull wiki-tools"), None)]) self._action_group.add_actions([("wikiFormatnum", None, _("formatnum"), None, _("insert formatnums"), self.on_wikiFormatnum_activate)])
manager.insert_action_group(self._action_group, -1) self._ui_id = manager.add_ui_from_string(ui_str)
def _remove_menu(self): manager = self._window.get_ui_manager()
manager.remove_ui(self._ui_id) manager.remove_action_group(self._action_group)
manager.ensure_update()
# fenetre de choix d'article def delete_event(self, widget, event, data=None): return False def destroy(self, widget, data=None): gtk.main_quit()
def cancel(self, widget, data=None): self.window_article.hide()
def ok(self, widget, action): nom_article = self.entry_article.get_text() if not nom_article: return
print nom_article # test
site = wp.Site("fr","wikipedia") page = wp.Page(site,nom_article)
if action == "export": doc = self._window.get_active_document() if not doc: return text = doc.get_text(doc.get_start_iter(),doc.get_end_iter())
page.put(text,"Édition de Nemoi depuis gedit ; Fonctionalité de commentaire non-encore implémentée")
elif action == "import": text = page.get()
doc = self._window.create_tab(1) doc.set_text(text) else: print "bug_01"
self.window_article.hide()
def choose_article(self,action): self.window_article = gtk.Window(gtk.WINDOW_TOPLEVEL) self.window_article.set_modal(1)
- self.window_article.set_size_request(200, 100)
self.window_article.set_border_width(10) self.window_article.set_title(_("Article to ")+action+"...")
self.window_article.connect("delete_event", self.delete_event) self.window_article.connect("destroy", self.destroy)
- self.window_article.hide_on_delete(True)
- self.window_article.set_icon_from_file(...)
- self.window_article.set_destroy_with_parent(...)
- self.window_article.set_deletable(False)
self.vbox = gtk.VBox(False, 1) self.window_article.add(self.vbox)
self.entry_article = gtk.Entry(max=0) self.entry_article.set_visibility(1) self.vbox.pack_start(self.entry_article, True, True, 0)
self.buttonbox = gtk.HButtonBox() self.buttonbox.set_layout(gtk.BUTTONBOX_SPREAD) self.vbox.pack_start(self.buttonbox, True, True, 0)
self.button_cancel = gtk.Button(stock=gtk.STOCK_CANCEL) self.button_cancel.connect("clicked", self.cancel, None) self.buttonbox.add(self.button_cancel)
self.button_ok = gtk.Button(stock=gtk.STOCK_OK) self.button_ok.connect("clicked", self.ok, action) self.buttonbox.add(self.button_ok)
self.button_cancel.show() self.button_ok.show() self.buttonbox.show() self.entry_article.show() self.vbox.show() self.window_article.show()
# appels def on_wikiExport_activate(self,action): self.choose_article("export")
def on_wikiImport_activate(self, action): self.choose_article("import")
def on_wikiFormatnum_activate(self, action): doc = self._window.get_active_document() if not doc: return
class ExamplePyPlugin(gedit.Plugin): def __init__(self): gedit.Plugin.__init__(self) self._instances = {}
def activate(self, window): self._instances[window] = WikiTools(self, window)
def deactivate(self, window): self._instances[window].desactivate() del self._instances[window]
def update_ui(self, window): self._instances[window].update_ui()