289 self.__flashCpyAct = self.__cpyMenu.addAction( |
289 self.__flashCpyAct = self.__cpyMenu.addAction( |
290 self.tr("Flash CircuitPython Firmware"), self.__flashCircuitPython |
290 self.tr("Flash CircuitPython Firmware"), self.__flashCircuitPython |
291 ) |
291 ) |
292 self.__cpyMenu.addSeparator() |
292 self.__cpyMenu.addSeparator() |
293 self.__cpyMenu.addMenu(self.__libraryMenu) |
293 self.__cpyMenu.addMenu(self.__libraryMenu) |
|
294 self.__cpyMenu.addSeparator() |
|
295 self.__resetAct = self.__cpyMenu.addAction( |
|
296 self.tr("Reset Device"), self.__resetDevice |
|
297 ) |
294 |
298 |
295 def addDeviceMenuEntries(self, menu): |
299 def addDeviceMenuEntries(self, menu): |
296 """ |
300 """ |
297 Public method to add device specific entries to the given menu. |
301 Public method to add device specific entries to the given menu. |
298 |
302 |
299 @param menu reference to the context menu |
303 @param menu reference to the context menu |
300 @type QMenu |
304 @type QMenu |
301 """ |
305 """ |
|
306 connected = self.microPython.isConnected() |
302 linkConnected = self.microPython.isLinkConnected() |
307 linkConnected = self.microPython.isLinkConnected() |
303 |
308 |
304 self.__flashCpyAct.setEnabled(not linkConnected) |
309 self.__flashCpyAct.setEnabled(not linkConnected) |
|
310 self.__resetAct.setEnabled(connected) |
305 |
311 |
306 menu.addMenu(self.__cpyMenu) |
312 menu.addMenu(self.__cpyMenu) |
307 |
313 |
308 @pyqtSlot() |
314 @pyqtSlot() |
309 def __aboutToShowLibraryMenu(self): |
315 def __aboutToShowLibraryMenu(self): |
326 act.setEnabled(self.__deviceVolumeMounted()) |
332 act.setEnabled(self.__deviceVolumeMounted()) |
327 self.__libraryMenu.addSeparator() |
333 self.__libraryMenu.addSeparator() |
328 self.__libraryMenu.addAction( |
334 self.__libraryMenu.addAction( |
329 self.tr("Install 'circup' Package"), |
335 self.tr("Install 'circup' Package"), |
330 self.__updater.installCircup, |
336 self.__updater.installCircup, |
|
337 ) |
|
338 |
|
339 @pyqtSlot() |
|
340 def __resetDevice(self): |
|
341 """ |
|
342 Private slot to reset the connected device. |
|
343 """ |
|
344 if self.microPython.isConnected(): |
|
345 self.microPython.deviceInterface().execute( |
|
346 "import microcontroller\nmicrocontroller.reset()\n" |
331 ) |
347 ) |
332 |
348 |
333 def hasFlashMenuEntry(self): |
349 def hasFlashMenuEntry(self): |
334 """ |
350 """ |
335 Public method to check, if the device has its own flash menu entry. |
351 Public method to check, if the device has its own flash menu entry. |