diff -r 5441fa55cb0d -r dac9bc72a0f3 eric6/Preferences/ConfigurationPages/MicroPythonPage.py --- a/eric6/Preferences/ConfigurationPages/MicroPythonPage.py Mon Apr 13 11:30:24 2020 +0200 +++ b/eric6/Preferences/ConfigurationPages/MicroPythonPage.py Mon Apr 13 16:26:46 2020 +0200 @@ -35,6 +35,31 @@ self.colorSchemeComboBox.addItems(sorted(AnsiColorSchemes.keys())) + # populate the chart theme combobox + try: + from PyQt5.QtChart import QChart + + self.chartThemeComboBox.addItem(self.tr("Automatic"), + -1) + self.chartThemeComboBox.addItem(self.tr("Light"), + QChart.ChartThemeLight); + self.chartThemeComboBox.addItem(self.tr("Dark"), + QChart.ChartThemeDark); + self.chartThemeComboBox.addItem(self.tr("Blue Cerulean"), + QChart.ChartThemeBlueCerulean); + self.chartThemeComboBox.addItem(self.tr("Brown Sand"), + QChart.ChartThemeBrownSand); + self.chartThemeComboBox.addItem(self.tr("Blue NCS"), + QChart.ChartThemeBlueNcs); + self.chartThemeComboBox.addItem(self.tr("High Contrast"), + QChart.ChartThemeHighContrast); + self.chartThemeComboBox.addItem(self.tr("Blue Icy"), + QChart.ChartThemeBlueIcy); + self.chartThemeComboBox.addItem(self.tr("Qt"), + QChart.ChartThemeQt); + except ImportError: + self.chartThemeComboBox.setEnabled(False) + self.mpyCrossPicker.setMode(E5PathPickerModes.OpenFileMode) self.mpyCrossPicker.setFilters(self.tr("All Files (*)")) @@ -42,26 +67,44 @@ self.dfuUtilPathPicker.setFilters(self.tr("All Files (*)")) # set initial values + # serial link parameters self.timeoutSpinBox.setValue( Preferences.getMicroPython("SerialTimeout") / 1000) # converted to seconds self.syncTimeCheckBox.setChecked( Preferences.getMicroPython("SyncTimeAfterConnect")) + + # REPL Pane self.colorSchemeComboBox.setCurrentIndex( self.colorSchemeComboBox.findText( Preferences.getMicroPython("ColorScheme"))) self.replWrapCheckBox.setChecked( Preferences.getMicroPython("ReplLineWrap")) + + # Chart Pane + index = self.chartThemeComboBox.findData( + Preferences.getMicroPython("ChartColorTheme")) + if index < 0: + index = 0 + self.chartThemeComboBox.setCurrentIndex(index) + + # MPY Cross Compiler self.mpyCrossPicker.setText( Preferences.getMicroPython("MpyCrossCompiler")) + + # PyBoard specifics self.dfuUtilPathPicker.setText( Preferences.getMicroPython("DfuUtilPath")) + + # firmware URL self.micropythonFirmwareUrlLineEdit.setText( Preferences.getMicroPython("MicroPythonFirmwareUrl")) self.circuitpythonFirmwareUrlLineEdit.setText( Preferences.getMicroPython("CircuitPythonFirmwareUrl")) self.microbitFirmwareUrlLineEdit.setText( Preferences.getMicroPython("MicrobitFirmwareUrl")) + + # documentation URL self.micropythonDocuUrlLineEdit.setText( Preferences.getMicroPython("MicroPythonDocuUrl")) self.circuitpythonDocuUrlLineEdit.setText( @@ -73,6 +116,7 @@ """ Public slot to save the MicroPython configuration. """ + # serial link parameters Preferences.setMicroPython( "SerialTimeout", self.timeoutSpinBox.value() * 1000) @@ -80,18 +124,31 @@ Preferences.setMicroPython( "SyncTimeAfterConnect", self.syncTimeCheckBox.isChecked()) + + # REPL Pane Preferences.setMicroPython( "ColorScheme", self.colorSchemeComboBox.currentText()) Preferences.setMicroPython( "ReplLineWrap", self.replWrapCheckBox.isChecked()) + + # Chart Pane + Preferences.setMicroPython( + "ChartColorTheme", + self.chartThemeComboBox.currentData()) + + # MPY Cross Compiler Preferences.setMicroPython( "MpyCrossCompiler", self.mpyCrossPicker.text()) + + # PyBoard specifics Preferences.setMicroPython( "DfuUtilPath", self.dfuUtilPathPicker.text()) + + # firmware URL Preferences.setMicroPython( "MicroPythonFirmwareUrl", self.micropythonFirmwareUrlLineEdit.text()) @@ -101,6 +158,8 @@ Preferences.setMicroPython( "MicrobitFirmwareUrl", self.microbitFirmwareUrlLineEdit.text()) + + # documentation URL Preferences.setMicroPython( "MicroPythonDocuUrl", self.micropythonDocuUrlLineEdit.text())