13 from PyQt6.QtWidgets import QApplication, QDialog, QMenu, QTreeWidgetItem |
13 from PyQt6.QtWidgets import QApplication, QDialog, QMenu, QTreeWidgetItem |
14 |
14 |
15 from eric7 import Preferences |
15 from eric7 import Preferences |
16 from eric7.EricGui import EricPixmapCache |
16 from eric7.EricGui import EricPixmapCache |
17 from eric7.EricWidgets import EricMessageBox |
17 from eric7.EricWidgets import EricMessageBox |
|
18 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow |
18 |
19 |
19 from .Ui_FeedsManager import Ui_FeedsManager |
20 from .Ui_FeedsManager import Ui_FeedsManager |
20 |
21 |
21 |
22 |
22 class FeedsManager(QDialog, Ui_FeedsManager): |
23 class FeedsManager(QDialog, Ui_FeedsManager): |
159 @pyqtSlot() |
160 @pyqtSlot() |
160 def on_editButton_clicked(self): |
161 def on_editButton_clicked(self): |
161 """ |
162 """ |
162 Private slot to edit the selected feed. |
163 Private slot to edit the selected feed. |
163 """ |
164 """ |
|
165 from .FeedEditDialog import FeedEditDialog |
|
166 |
164 itm = self.feedsTree.selectedItems()[0] |
167 itm = self.feedsTree.selectedItems()[0] |
165 origTitle = itm.text(0) |
168 origTitle = itm.text(0) |
166 origUrlString = itm.data(0, FeedsManager.UrlStringRole) |
169 origUrlString = itm.data(0, FeedsManager.UrlStringRole) |
167 |
170 |
168 feedToChange = None |
171 feedToChange = None |
170 if feed[0] == origUrlString: |
173 if feed[0] == origUrlString: |
171 feedToChange = feed |
174 feedToChange = feed |
172 break |
175 break |
173 if feedToChange: |
176 if feedToChange: |
174 feedIndex = self.__feeds.index(feedToChange) |
177 feedIndex = self.__feeds.index(feedToChange) |
175 |
|
176 from .FeedEditDialog import FeedEditDialog |
|
177 |
178 |
178 dlg = FeedEditDialog(origUrlString, origTitle) |
179 dlg = FeedEditDialog(origUrlString, origTitle) |
179 if dlg.exec() == QDialog.DialogCode.Accepted: |
180 if dlg.exec() == QDialog.DialogCode.Accepted: |
180 urlString, title = dlg.getData() |
181 urlString, title = dlg.getData() |
181 for feed in self.__feeds: |
182 for feed in self.__feeds: |
259 if urlString == "": |
260 if urlString == "": |
260 return |
261 return |
261 |
262 |
262 for child in itm.takeChildren(): |
263 for child in itm.takeChildren(): |
263 del child |
264 del child |
264 |
|
265 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow |
|
266 |
265 |
267 request = QNetworkRequest(QUrl(urlString)) |
266 request = QNetworkRequest(QUrl(urlString)) |
268 reply = WebBrowserWindow.networkManager().get(request) |
267 reply = WebBrowserWindow.networkManager().get(request) |
269 reply.finished.connect(lambda: self.__feedLoaded(reply)) |
268 reply.finished.connect(lambda: self.__feedLoaded(reply)) |
270 self.__replies[id(reply)] = (reply, itm) |
269 self.__replies[id(reply)] = (reply, itm) |