Helpviewer/OpenSearch/OpenSearchDialog.py

changeset 142
94ce651735db
parent 96
9624a110667d
child 491
ac476c22d392
child 792
a13346916170
equal deleted inserted replaced
141:c76f1ec28766 142:94ce651735db
7 Module implementing a dialog for the configuration of search engines. 7 Module implementing a dialog for the configuration of search engines.
8 """ 8 """
9 9
10 from PyQt4.QtGui import QDialog, QFileDialog, QMessageBox 10 from PyQt4.QtGui import QDialog, QFileDialog, QMessageBox
11 from PyQt4.QtCore import pyqtSlot, SIGNAL 11 from PyQt4.QtCore import pyqtSlot, SIGNAL
12
13 from Helpviewer.HelpWebSearchWidget import HelpWebSearchWidget
14 12
15 from .OpenSearchEngineModel import OpenSearchEngineModel 13 from .OpenSearchEngineModel import OpenSearchEngineModel
16 from .OpenSearchEditDialog import OpenSearchEditDialog 14 from .OpenSearchEditDialog import OpenSearchEditDialog
17 15
18 from .Ui_OpenSearchDialog import Ui_OpenSearchDialog 16 from .Ui_OpenSearchDialog import Ui_OpenSearchDialog
28 QDialog.__init__(self, parent) 26 QDialog.__init__(self, parent)
29 self.setupUi(self) 27 self.setupUi(self)
30 28
31 self.setModal(True) 29 self.setModal(True)
32 30
31 self.__mw = parent
32
33 self.__model = \ 33 self.__model = \
34 OpenSearchEngineModel(HelpWebSearchWidget.openSearchManager(), self) 34 OpenSearchEngineModel(self.__mw.openSearchManager(), self)
35 self.enginesTable.setModel(self.__model) 35 self.enginesTable.setModel(self.__model)
36 self.enginesTable.horizontalHeader().resizeSection(0, 200) 36 self.enginesTable.horizontalHeader().resizeSection(0, 200)
37 self.enginesTable.horizontalHeader().setStretchLastSection(True) 37 self.enginesTable.horizontalHeader().setStretchLastSection(True)
38 self.enginesTable.verticalHeader().hide() 38 self.enginesTable.verticalHeader().hide()
39 self.enginesTable.verticalHeader().setDefaultSectionSize( 39 self.enginesTable.verticalHeader().setDefaultSectionSize(
53 self, 53 self,
54 self.trUtf8("Add search engine"), 54 self.trUtf8("Add search engine"),
55 "", 55 "",
56 self.trUtf8("OpenSearch (*.xml);;All Files (*)")) 56 self.trUtf8("OpenSearch (*.xml);;All Files (*)"))
57 57
58 osm = HelpWebSearchWidget.openSearchManager() 58 osm = self.__mw.openSearchManager()
59 for fileName in fileNames: 59 for fileName in fileNames:
60 if not osm.addEngine(fileName): 60 if not osm.addEngine(fileName):
61 QMessageBox.critical(self, 61 QMessageBox.critical(self,
62 self.trUtf8("Add search engine"), 62 self.trUtf8("Add search engine"),
63 self.trUtf8("""{0} is not a valid OpenSearch 1.1 description or""" 63 self.trUtf8("""{0} is not a valid OpenSearch 1.1 description or"""
78 @pyqtSlot() 78 @pyqtSlot()
79 def on_restoreButton_clicked(self): 79 def on_restoreButton_clicked(self):
80 """ 80 """
81 Private slot to restore the default search engines. 81 Private slot to restore the default search engines.
82 """ 82 """
83 HelpWebSearchWidget.openSearchManager().restoreDefaults() 83 self.__mw.openSearchManager().restoreDefaults()
84 84
85 @pyqtSlot() 85 @pyqtSlot()
86 def on_editButton_clicked(self): 86 def on_editButton_clicked(self):
87 """ 87 """
88 Private slot to edit the data of the current search engine. 88 Private slot to edit the data of the current search engine.
91 if len(rows) == 0: 91 if len(rows) == 0:
92 row = self.enginesTable.selectionModel().currentIndex().row() 92 row = self.enginesTable.selectionModel().currentIndex().row()
93 else: 93 else:
94 row = rows[0].row() 94 row = rows[0].row()
95 95
96 osm = HelpWebSearchWidget.openSearchManager() 96 osm = self.__mw.openSearchManager()
97 engineName = osm.allEnginesNames()[row] 97 engineName = osm.allEnginesNames()[row]
98 engine = osm.engine(engineName) 98 engine = osm.engine(engineName)
99 dlg = OpenSearchEditDialog(engine, self) 99 dlg = OpenSearchEditDialog(engine, self)
100 if dlg.exec_() == QDialog.Accepted: 100 if dlg.exec_() == QDialog.Accepted:
101 osm.enginesChanged() 101 osm.enginesChanged()

eric ide

mercurial