Helpviewer/OpenSearch/OpenSearchEngineModel.py

branch
Py2 comp.
changeset 3057
10516539f238
parent 2525
8b507a9a2d40
parent 3002
6ffc581f00f1
child 3060
5883ce99ee12
equal deleted inserted replaced
3056:9986ec0e559a 3057:10516539f238
21 """ 21 """
22 def __init__(self, manager, parent=None): 22 def __init__(self, manager, parent=None):
23 """ 23 """
24 Constructor 24 Constructor
25 25
26 @param manager reference to the search engine manager (OpenSearchManager) 26 @param manager reference to the search engine manager
27 (OpenSearchManager)
27 @param parent reference to the parent object (QObject) 28 @param parent reference to the parent object (QObject)
28 """ 29 """
29 super(OpenSearchEngineModel, self).__init__(parent) 30 super(OpenSearchEngineModel, self).__init__(parent)
30 31
31 self.__manager = manager 32 self.__manager = manager
109 @return requested data 110 @return requested data
110 """ 111 """
111 if index.row() >= self.__manager.enginesCount() or index.row() < 0: 112 if index.row() >= self.__manager.enginesCount() or index.row() < 0:
112 return None 113 return None
113 114
114 engine = self.__manager.engine(self.__manager.allEnginesNames()[index.row()]) 115 engine = self.__manager.engine(
116 self.__manager.allEnginesNames()[index.row()])
115 117
116 if engine is None: 118 if engine is None:
117 return None 119 return None
118 120
119 if index.column() == 0: 121 if index.column() == 0:
132 elif role == Qt.ToolTipRole: 134 elif role == Qt.ToolTipRole:
133 description = self.trUtf8("<strong>Description:</strong> {0}")\ 135 description = self.trUtf8("<strong>Description:</strong> {0}")\
134 .format(engine.description()) 136 .format(engine.description())
135 if engine.providesSuggestions(): 137 if engine.providesSuggestions():
136 description += "<br/>" 138 description += "<br/>"
137 description += \ 139 description += self.trUtf8(
138 self.trUtf8("<strong>Provides contextual suggestions</strong>") 140 "<strong>Provides contextual suggestions</strong>")
139 141
140 return description 142 return description
141 elif index.column() == 1: 143 elif index.column() == 1:
142 if role in [Qt.EditRole, Qt.DisplayRole]: 144 if role in [Qt.EditRole, Qt.DisplayRole]:
143 return ",".join(self.__manager.keywordsForEngine(engine)) 145 return ",".join(self.__manager.keywordsForEngine(engine))
144 elif role == Qt.ToolTipRole: 146 elif role == Qt.ToolTipRole:
145 return self.trUtf8("Comma-separated list of keywords that may" 147 return self.trUtf8(
146 " be entered in the location bar followed by search terms to search" 148 "Comma-separated list of keywords that may"
147 " with this engine") 149 " be entered in the location bar followed by search terms"
150 " to search with this engine")
148 151
149 return None 152 return None
150 153
151 def setData(self, index, value, role=Qt.EditRole): 154 def setData(self, index, value, role=Qt.EditRole):
152 """ 155 """
166 if role != Qt.EditRole: 169 if role != Qt.EditRole:
167 return False 170 return False
168 171
169 engineName = self.__manager.allEnginesNames()[index.row()] 172 engineName = self.__manager.allEnginesNames()[index.row()]
170 keywords = re.split("[ ,]+", value) 173 keywords = re.split("[ ,]+", value)
171 self.__manager.setKeywordsForEngine(self.__manager.engine(engineName), keywords) 174 self.__manager.setKeywordsForEngine(
175 self.__manager.engine(engineName), keywords)
172 176
173 return True 177 return True
174 178
175 def headerData(self, section, orientation, role=Qt.DisplayRole): 179 def headerData(self, section, orientation, role=Qt.DisplayRole):
176 """ 180 """

eric ide

mercurial