WebBrowser/Network/EricSchemeHandler.py

branch
QtWebEngine
changeset 4868
985d275502c8
parent 4861
d419f153925d
child 4885
362360f9a979
equal deleted inserted replaced
4865:4adc526bc4b3 4868:985d275502c8
21 Class implementing a scheme handler for the eric: scheme. 21 Class implementing a scheme handler for the eric: scheme.
22 """ 22 """
23 SupportedPages = [ 23 SupportedPages = [
24 "adblock", # error page for URLs blocked by AdBlock 24 "adblock", # error page for URLs blocked by AdBlock
25 "home", "start", "startpage", # eric home page 25 "home", "start", "startpage", # eric home page
26 "speeddial", # eric speeddial
26 ] 27 ]
27 28
28 def __init__(self, parent=None): 29 def __init__(self, parent=None):
29 """ 30 """
30 Constructor 31 Constructor
68 @signal closed emitted to signal that the web engine has read 69 @signal closed emitted to signal that the web engine has read
69 the data 70 the data
70 """ 71 """
71 closed = pyqtSignal() 72 closed = pyqtSignal()
72 73
74 _speedDialPage = ""
75
73 def __init__(self, job, parent=None): 76 def __init__(self, job, parent=None):
74 """ 77 """
75 Constructor 78 Constructor
76 79
77 @param job reference to the URL request 80 @param job reference to the URL request
103 106
104 if self.__pageName == "adblock": 107 if self.__pageName == "adblock":
105 stream << self.__adBlockPage() 108 stream << self.__adBlockPage()
106 elif self.__pageName in ["home", "start", "startpage"]: 109 elif self.__pageName in ["home", "start", "startpage"]:
107 stream << self.__startPage() 110 stream << self.__startPage()
111 elif self.__pageName == "speeddial":
112 stream << self.__speedDialPage()
108 113
109 stream.flush() 114 stream.flush()
110 self.__buffer.reset() 115 self.__buffer.reset()
111 self.__loaded = True 116 self.__loaded = True
112 117
179 else: 184 else:
180 ltr = "RTL" 185 ltr = "RTL"
181 page = page.replace("@QT_LAYOUT_DIRECTION@", ltr) 186 page = page.replace("@QT_LAYOUT_DIRECTION@", ltr)
182 187
183 return page 188 return page
189
190 def __speedDialPage(self):
191 """
192 Private method to create the Speeddial page.
193
194 @return prepared speeddial page (QByteArray)
195 """
196 if not self._speedDialPage:
197 page = readAllFileContents(":/html/speeddialPage.html")
198 page = (
199 page.replace("@FAVICON@", "qrc:icons/ericWeb16.png")
200 .replace("@IMG_PLUS@", "qrc:icons/plus.png")
201 .replace("@IMG_CLOSE@", "qrc:icons/close.png")
202 .replace("@IMG_EDIT@", "qrc:icons/edit.png")
203 .replace("@IMG_RELOAD@", "qrc:icons/reload.png")
204 .replace("@IMG_SETTINGS@", "qrc:icons/setting.png")
205 .replace("@LOADING-IMG@", "qrc:icons/loading.gif")
206 .replace("@BOX-BORDER@", "qrc:icons/box-border-small.png")
207
208 .replace("@JQUERY@", "qrc:javascript/jquery.js")
209 .replace("@JQUERY-UI@", "qrc:javascript/jquery-ui.js")
210
211 .replace("@SITE-TITLE@", self.tr("Speed Dial"))
212 .replace("@URL@", self.tr("URL"))
213 .replace("@TITLE@", self.tr("Title"))
214 .replace("@APPLY@", self.tr("Apply"))
215 .replace("@CLOSE@", self.tr("Close"))
216 .replace("@NEW-PAGE@", self.tr("New Page"))
217 .replace("@TITLE-EDIT@", self.tr("Edit"))
218 .replace("@TITLE-REMOVE@", self.tr("Remove"))
219 .replace("@TITLE-RELOAD@", self.tr("Reload"))
220 .replace("@TITLE-WARN@",
221 self.tr("Are you sure to remove this speed dial?"))
222 .replace("@TITLE-FETCHTITLE@",
223 self.tr("Load title from page"))
224 .replace("@SETTINGS-TITLE@",
225 self.tr("Speed Dial Settings"))
226 .replace("@ADD-TITLE@", self.tr("Add New Page"))
227 .replace("@TXT_NRROWS@",
228 self.tr("Maximum pages in a row:"))
229 .replace("@TXT_SDSIZE@", self.tr("Change size of pages:"))
230 )
231
232 self._speedDialPage = page
233
234 from WebBrowser.WebBrowserWindow import WebBrowserWindow
235 dial = WebBrowserWindow.speedDial()
236 page = (
237 self._speedDialPage
238 .replace("@INITIAL-SCRIPT@", dial.initialScript())
239 .replace("@ROW-PAGES@", str(dial.pagesInRow()))
240 .replace("@SD-SIZE@", str(dial.sdSize()))
241 )
242
243 return page

eric ide

mercurial