E5Network/E5NetworkMonitor.py

changeset 6115
ac3a98f3ebc2
parent 6048
82ad8ec9548c
child 6645
ad476851d7e0
equal deleted inserted replaced
6113:0cf5c9683a51 6115:ac3a98f3ebc2
80 self.__requestHeaders = QStandardItemModel(self) 80 self.__requestHeaders = QStandardItemModel(self)
81 self.__requestHeaders.setHorizontalHeaderLabels( 81 self.__requestHeaders.setHorizontalHeaderLabels(
82 [self.tr("Name"), self.tr("Value")]) 82 [self.tr("Name"), self.tr("Value")])
83 self.requestHeadersList.setModel(self.__requestHeaders) 83 self.requestHeadersList.setModel(self.__requestHeaders)
84 self.requestHeadersList.horizontalHeader().setStretchLastSection(True) 84 self.requestHeadersList.horizontalHeader().setStretchLastSection(True)
85 self.requestHeadersList.doubleClicked.connect(self.__showHeaderDetails) 85 self.requestHeadersList.doubleClicked.connect(
86 lambda index: self.__showHeaderDetails(
87 index, self.requestHeadersList))
86 88
87 self.__replyHeaders = QStandardItemModel(self) 89 self.__replyHeaders = QStandardItemModel(self)
88 self.__replyHeaders.setHorizontalHeaderLabels( 90 self.__replyHeaders.setHorizontalHeaderLabels(
89 [self.tr("Name"), self.tr("Value")]) 91 [self.tr("Name"), self.tr("Value")])
90 self.responseHeadersList.setModel(self.__replyHeaders) 92 self.responseHeadersList.setModel(self.__replyHeaders)
91 self.responseHeadersList.horizontalHeader().setStretchLastSection(True) 93 self.responseHeadersList.horizontalHeader().setStretchLastSection(True)
92 self.responseHeadersList.doubleClicked.connect( 94 self.responseHeadersList.doubleClicked.connect(
93 self.__showHeaderDetails) 95 lambda index: self.__showHeaderDetails(
96 index, self.responseHeadersList))
94 97
95 self.requestsList.horizontalHeader().setStretchLastSection(True) 98 self.requestsList.horizontalHeader().setStretchLastSection(True)
96 self.requestsList.verticalHeader().setMinimumSectionSize(-1) 99 self.requestsList.verticalHeader().setMinimumSectionSize(-1)
97 100
98 self.__proxyModel = QSortFilterProxyModel(self) 101 self.__proxyModel = QSortFilterProxyModel(self)
178 self.__replyHeaders.item(0, 0).setFlags( 181 self.__replyHeaders.item(0, 0).setFlags(
179 Qt.ItemIsSelectable | Qt.ItemIsEnabled) 182 Qt.ItemIsSelectable | Qt.ItemIsEnabled)
180 self.__replyHeaders.item(0, 1).setFlags( 183 self.__replyHeaders.item(0, 1).setFlags(
181 Qt.ItemIsSelectable | Qt.ItemIsEnabled) 184 Qt.ItemIsSelectable | Qt.ItemIsEnabled)
182 185
183 def __showHeaderDetails(self, index): 186 def __showHeaderDetails(self, index, headerList):
184 """ 187 """
185 Private slot to show a dialog with the header details. 188 Private slot to show a dialog with the header details.
186 189
187 @param index index of the entry to show (QModelIndex) 190 @param index index of the entry to show
191 @type QModelIndex
192 @param headerList list requesting the header details
193 @type QTableView
188 """ 194 """
189 if not index.isValid(): 195 if not index.isValid():
190 return
191
192 headerList = self.sender()
193 if headerList is None:
194 return 196 return
195 197
196 row = index.row() 198 row = index.row()
197 name = headerList.model().data(headerList.model().index(row, 0)) 199 name = headerList.model().data(headerList.model().index(row, 0))
198 value = headerList.model().data(headerList.model().index(row, 1)) 200 value = headerList.model().data(headerList.model().index(row, 1))
258 @param req reference to the request object (E5NetworkRequest) 260 @param req reference to the request object (E5NetworkRequest)
259 """ 261 """
260 self.beginInsertRows( 262 self.beginInsertRows(
261 QModelIndex(), len(self.requests), len(self.requests)) 263 QModelIndex(), len(self.requests), len(self.requests))
262 self.requests.append(req) 264 self.requests.append(req)
263 req.reply.finished.connect(self.__addReply) 265 req.reply.finished.connect(lambda: self.__addReply(req.reply))
264 self.endInsertRows() 266 self.endInsertRows()
265 267
266 def __addReply(self): 268 def __addReply(self, reply):
267 """ 269 """
268 Private slot to add the reply data to the model. 270 Private slot to add the reply data to the model.
269 """ 271
270 reply = self.sender() 272 @param reply reference to the network reply object
271 if reply is None: 273 @type QNetworkReply
272 return 274 """
273
274 offset = len(self.requests) - 1 275 offset = len(self.requests) - 1
275 while offset >= 0: 276 while offset >= 0:
276 if self.requests[offset].reply is reply: 277 if self.requests[offset].reply is reply:
277 break 278 break
278 offset -= 1 279 offset -= 1

eric ide

mercurial