eric6/Preferences/ConfigurationPages/MicroPythonPage.py

changeset 7535
dac9bc72a0f3
parent 7360
9190402e4505
child 7541
b265a2d0a797
--- 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())

eric ide

mercurial