Helpviewer/Bookmarks/BookmarksImporters/__init__.py

Sun, 29 Jul 2012 18:05:03 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 29 Jul 2012 18:05:03 +0200
changeset 1965
96f5a76e1845
parent 1729
66b9dc45f2bd
child 2302
f29e9405c851
permissions
-rw-r--r--

Fixed some PEP-8 related issues.

1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 # Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de>
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Package implementing bookmarks importers for various sources.
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 from PyQt4.QtCore import QCoreApplication
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import UI.PixmapCache
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
13 import Globals
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 def getImporters():
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 """
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 Module function to get a list of supported importers.
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 @return list of tuples with an icon (QIcon), readable name (string) and
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 internal name (string)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 """
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
23 importers = []
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
24 importers.append(
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
25 (UI.PixmapCache.getIcon("ericWeb48.png"), "eric5 Web Browser", "e5browser"))
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
26 importers.append(
1716
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
27 (UI.PixmapCache.getIcon("firefox.png"), "Mozilla Firefox", "firefox"))
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
28 importers.append(
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
29 (UI.PixmapCache.getIcon("chrome.png"), "Google Chrome", "chrome"))
1716
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
30 if Globals.isLinuxPlatform():
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
31 importers.append(
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
32 (UI.PixmapCache.getIcon("chromium.png"), "Chromium", "chromium"))
1729
66b9dc45f2bd Added a bookmarks importer for Konqueror (Linux only) and an exporter to write Netscape bookmark files (HTML).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1720
diff changeset
33 importers.append(
66b9dc45f2bd Added a bookmarks importer for Konqueror (Linux only) and an exporter to write Netscape bookmark files (HTML).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1720
diff changeset
34 (UI.PixmapCache.getIcon("konqueror.png"), "Konqueror", "konqueror"))
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
35 importers.append(
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
36 (UI.PixmapCache.getIcon("opera.png"), "Opera", "opera"))
1720
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
37 importers.append(
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
38 (UI.PixmapCache.getIcon("safari.png"), "Apple Safari", "safari"))
1717
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
39 if Globals.isWindowsPlatform():
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
40 importers.append(
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
41 (UI.PixmapCache.getIcon("internet_explorer.png"), "Internet Explorer", "ie"))
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
42 importers.append(
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 (UI.PixmapCache.getIcon("xbel.png"),
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 QCoreApplication.translate("BookmarksImporters", "XBEL File"),
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
45 "xbel"))
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
46 importers.append(
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 (UI.PixmapCache.getIcon("html.png"),
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 QCoreApplication.translate("BookmarksImporters", "HTML File"),
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
49 "html"))
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
50 return importers
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 def getImporterInfo(id):
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 """
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 Module function to get information for the given source id.
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 @param id source id to get info for (string)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 @return tuple with an icon (QPixmap), readable name (string), name of
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 the default bookmarks file (string), an info text (string),
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 a prompt (string) and the default directory of the bookmarks file (string)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 """
1729
66b9dc45f2bd Added a bookmarks importer for Konqueror (Linux only) and an exporter to write Netscape bookmark files (HTML).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1720
diff changeset
62 if id in ["e5browser", "xbel", "konqueror"]:
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 from . import XbelImporter
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 return XbelImporter.getImporterInfo(id)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 elif id == "html":
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 from . import HtmlImporter
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 return HtmlImporter.getImporterInfo(id)
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
68 elif id in ["chrome", "chromium"]:
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
69 from . import ChromeImporter
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
70 return ChromeImporter.getImporterInfo(id)
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
71 elif id == "opera":
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
72 from . import OperaImporter
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
73 return OperaImporter.getImporterInfo(id)
1716
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
74 elif id == "firefox":
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
75 from . import FirefoxImporter
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
76 return FirefoxImporter.getImporterInfo(id)
1717
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
77 elif id == "ie":
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
78 from . import IExplorerImporter
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
79 return IExplorerImporter.getImporterInfo(id)
1720
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
80 elif id == "safari":
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
81 from . import SafariImporter
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
82 return SafariImporter.getImporterInfo(id)
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
83 else:
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
84 raise ValueError("Invalid importer ID given ({0}).".format(id))
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85
1965
96f5a76e1845 Fixed some PEP-8 related issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1729
diff changeset
86
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87 def getImporter(id, parent=None):
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 """
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89 Module function to get an importer for the given source id.
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 @param id source id to get an importer for (string)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 @param parent reference to the parent object (QObject)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 @return bookmarks importer (BookmarksImporter)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 """
1729
66b9dc45f2bd Added a bookmarks importer for Konqueror (Linux only) and an exporter to write Netscape bookmark files (HTML).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1720
diff changeset
95 if id in ["e5browser", "xbel", "konqueror"]:
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 from . import XbelImporter
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 return XbelImporter.XbelImporter(id, parent)
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 elif id == "html":
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 from . import HtmlImporter
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 return HtmlImporter.HtmlImporter(id, parent)
1714
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
101 elif id in ["chrome", "chromium"]:
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
102 from . import ChromeImporter
e9bd88363184 Added a bookmarks importer for Google Chrome and Chromium.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1713
diff changeset
103 return ChromeImporter.ChromeImporter(id, parent)
1715
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
104 elif id == "opera":
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
105 from . import OperaImporter
558e44df025a Added a bookmarks importer for Opera.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1714
diff changeset
106 return OperaImporter.OperaImporter(id, parent)
1716
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
107 elif id == "firefox":
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
108 from . import FirefoxImporter
d634df56a664 Added a bookmarks importer for Firefox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1715
diff changeset
109 return FirefoxImporter.FirefoxImporter(id, parent)
1717
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
110 elif id == "ie":
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
111 from . import IExplorerImporter
ba85828cd357 Added a bookmarks importer for Internet Explorer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1716
diff changeset
112 return IExplorerImporter.IExplorerImporter(id, parent)
1720
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
113 elif id == "safari":
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
114 from . import SafariImporter
201622cf8a01 Added a bookmarks importer for Apple Safari.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1719
diff changeset
115 return SafariImporter.SafariImporter(id, parent)
1713
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 else:
56fdde8a2441 Added a bookmarks importer to get them directly from other browsers files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 raise ValueError("No importer for ID {0}.".format(id))

eric ide

mercurial