40 from eric7.EricWidgets.EricZoomWidget import EricZoomWidget |
40 from eric7.EricWidgets.EricZoomWidget import EricZoomWidget |
41 from eric7.SystemUtilities import FileSystemUtilities, OSUtilities |
41 from eric7.SystemUtilities import FileSystemUtilities, OSUtilities |
42 from eric7.UI.Info import BugAddress |
42 from eric7.UI.Info import BugAddress |
43 |
43 |
44 from . import Devices, UF2FlashDialog |
44 from . import Devices, UF2FlashDialog |
|
45 from .BluetoothDialogs.BluetoothController import BluetoothController |
45 from .MicroPythonFileManager import MicroPythonFileManager |
46 from .MicroPythonFileManager import MicroPythonFileManager |
46 from .MicroPythonFileManagerWidget import MicroPythonFileManagerWidget |
47 from .MicroPythonFileManagerWidget import MicroPythonFileManagerWidget |
47 from .Ui_MicroPythonWidget import Ui_MicroPythonWidget |
48 from .Ui_MicroPythonWidget import Ui_MicroPythonWidget |
48 from .WifiDialogs.WifiController import WifiController |
49 from .WifiDialogs.WifiController import WifiController |
49 |
50 |
229 self.__ui = parent |
230 self.__ui = parent |
230 |
231 |
231 self.__wifiController = WifiController(self, self) |
232 self.__wifiController = WifiController(self, self) |
232 self.__wifiMenu = None |
233 self.__wifiMenu = None |
233 |
234 |
|
235 self.__bluetoothController = BluetoothController(self, self) |
|
236 self.__btMenu = None |
|
237 |
234 self.__superMenu = QMenu(self) |
238 self.__superMenu = QMenu(self) |
235 self.__superMenu.aboutToShow.connect(self.__aboutToShowSuperMenu) |
239 self.__superMenu.aboutToShow.connect(self.__aboutToShowSuperMenu) |
236 |
240 |
237 self.menuButton.setObjectName("micropython_supermenu_button") |
241 self.menuButton.setObjectName("micropython_supermenu_button") |
238 self.menuButton.setIcon(EricPixmapCache.getIcon("superMenu")) |
242 self.menuButton.setIcon(EricPixmapCache.getIcon("superMenu")) |
1492 self.__wifiMenu.deleteLater() |
1496 self.__wifiMenu.deleteLater() |
1493 self.__wifiMenu = self.__wifiController.createMenu(self.__superMenu) |
1497 self.__wifiMenu = self.__wifiController.createMenu(self.__superMenu) |
1494 else: |
1498 else: |
1495 self.__wifiMenu = None |
1499 self.__wifiMenu = None |
1496 |
1500 |
|
1501 # prepare the Bluetooth menu |
|
1502 if ( |
|
1503 self.__device |
|
1504 and self.__connected |
|
1505 and self.__device.getDeviceData("bluetooth") |
|
1506 ): |
|
1507 if self.__btMenu is not None: |
|
1508 self.__btMenu.deleteLater() |
|
1509 self.__btMenu = self.__bluetoothController.createMenu(self.__superMenu) |
|
1510 else: |
|
1511 self.__btMenu = None |
|
1512 |
1497 # populate the super menu |
1513 # populate the super menu |
1498 hasTime = self.__device.hasTimeCommands() if self.__device else False |
1514 hasTime = self.__device.hasTimeCommands() if self.__device else False |
1499 |
1515 |
1500 self.__superMenu.addAction( |
1516 self.__superMenu.addAction( |
1501 self.tr("Show Version"), self.__showDeviceVersion |
1517 self.tr("Show Version"), self.__showDeviceVersion |
1545 if self.__device: |
1561 if self.__device: |
1546 self.__device.addDeviceMenuEntries(self.__superMenu) |
1562 self.__device.addDeviceMenuEntries(self.__superMenu) |
1547 self.__superMenu.addSeparator() |
1563 self.__superMenu.addSeparator() |
1548 if self.__wifiMenu is not None: |
1564 if self.__wifiMenu is not None: |
1549 self.__superMenu.addMenu(self.__wifiMenu) |
1565 self.__superMenu.addMenu(self.__wifiMenu) |
|
1566 if self.__btMenu is not None: |
|
1567 self.__superMenu.addMenu(self.__btMenu) |
|
1568 if self.__wifiMenu is not None or self.__btMenu is not None: |
1550 self.__superMenu.addSeparator() |
1569 self.__superMenu.addSeparator() |
1551 if downloadMenu is None: |
1570 if downloadMenu is None: |
1552 # generic download action |
1571 # generic download action |
1553 self.__superMenu.addAction( |
1572 self.__superMenu.addAction( |
1554 self.tr("Download Firmware"), self.__downloadFirmware |
1573 self.tr("Download Firmware"), self.__downloadFirmware |