configtool: use new wxPython 4

Installation/Update:
- Windows/macOS
    pip install -U wxPython

- Linux
    pip install -U wxPython
      - if it fails to install wxPython >= 4 go ahead, else you're done.

    Check https://extras.wxpython.org/wxPython4/extras/linux/gtk3/
    for e.g. Ubuntu 18.04:
      pip install -U \
      -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-18.04/ \
      wxPython

check also https://wxpython.org/pages/downloads/ for further details.
This commit is contained in:
Nico Tonnhofer 2018-12-16 12:00:27 +01:00
parent 55f560260f
commit 727d5dee66
20 changed files with 229 additions and 229 deletions

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python
# Note: syntax in this file has to be kept compatible with Pyton 3, else
# Note: syntax in this file has to be kept compatible with Python 3, else
# Python errors in the compilation stage already, without showing
# user help about the incompatibility. To test, simply run
#
@ -14,8 +14,8 @@
import sys
import time
if sys.version_info.major >= 3:
print("You are currently running Python3. Python3 is not supported, because\n"
"there is no wxPython for Python3. Please try running with Python2.\n"
print("You are currently running Python3. Python3 is not supported.\n"
"Please try running with Python2.\n\n"
"It often works to type \"python2 configtool.py\" in the command line.")
time.sleep(10)
sys.exit(-1)

View File

@ -23,59 +23,59 @@ class AccelerationPage(wx.Panel, Page):
'MAX_JERK_E': "E:"}
sz = wx.GridBagSizer()
sz.AddSpacer((20, 40), pos = (0, 0))
sz.Add((20, 40), pos = (0, 0))
b = wx.StaticBox(self, wx.ID_ANY, "Acceleration Type")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
style = wx.RB_GROUP
for k in self.accTypeKeys:
rb = self.addRadioButton(k, style, self.onAccTypeSelect, b)
style = 0
sbox.Add(rb, 1, wx.LEFT + wx.RIGHT, 16)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
self.rbNone = wx.RadioButton(self, wx.ID_ANY, "None", style = style)
self.rbNone.SetFont(font)
self.rbNone.SetValue(True)
self.Bind(wx.EVT_RADIOBUTTON, self.onAccTypeSelect, self.rbNone)
sbox.Add(self.rbNone, 1, wx.LEFT + wx.RIGHT, 16)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 1))
b = wx.StaticBox(self, wx.ID_ANY, "Ramping Parameters")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'ACCELERATION'
tc = self.addTextCtrl(k, 80, self.onTextCtrlFloat)
self.textControls[k].Enable(False)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'LOOKAHEAD'
cb = self.addCheckBox(k, self.onCheckBox)
self.checkBoxes[k].Enable(False)
sbox.Add(cb, 1, wx.ALIGN_CENTER_HORIZONTAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 3))
b = wx.StaticBox(self, wx.ID_ANY, "Maximum Jerk")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.jerkKeys:
tc = self.addTextCtrl(k, 40, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.AddSpacer((80, 20), pos = (1, 4))
sz.Add((80, 20), pos = (1, 4))
sz.Add(sbox, pos = (1, 5))
self.SetSizer(sz)

View File

@ -19,7 +19,7 @@ class AddHeaterDlg(wx.Dialog):
sz = wx.BoxSizer(wx.VERTICAL)
gsz = wx.GridBagSizer()
gsz.AddSpacer((20, 20), pos = (0, 0))
gsz.Add((20, 20), pos = (0, 0))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Heater Name:", size = (80, -1),
@ -33,7 +33,7 @@ class AddHeaterDlg(wx.Dialog):
self.tcName.SetBackgroundColour("pink")
self.tcName.Bind(wx.EVT_TEXT, self.onNameEntry)
lsz.Add(self.tcName)
self.tcName.SetToolTipString("Enter a unique name for this heater.")
self.tcName.SetToolTip("Enter a unique name for this heater.")
gsz.Add(lsz, pos = (1, 1))
@ -52,7 +52,7 @@ class AddHeaterDlg(wx.Dialog):
else:
self.chPin.SetSelection(i)
lsz.Add(self.chPin)
self.chPin.SetToolTipString("Choose a pin for this heater.")
self.chPin.SetToolTip("Choose a pin for this heater.")
gsz.Add(lsz, pos = (3, 1))
@ -66,7 +66,7 @@ class AddHeaterDlg(wx.Dialog):
self.tcMaxPWM.SetFont(font)
self.tcMaxPWM.Bind(wx.EVT_TEXT, self.onMaxPWM)
lsz.Add(self.tcMaxPWM)
self.tcMaxPWM.SetToolTipString("Enter max. PWM value in [%]. Typically \n"
self.tcMaxPWM.SetToolTip("Enter max. PWM value in [%]. Typically \n"
"between 40 and 100. Standard is 100.\n"
"Valid values 1 to 100.")
@ -75,7 +75,7 @@ class AddHeaterDlg(wx.Dialog):
self.cbInv = wx.CheckBox(self, wx.ID_ANY, "Invert")
self.cbInv.SetFont(font)
self.cbInv.SetValue(int(invert) != 0)
self.cbInv.SetToolTipString("Invert the pin signal.")
self.cbInv.SetToolTip("Invert the pin signal.")
gsz.Add(self.cbInv, pos = (3, 3))
@ -89,18 +89,18 @@ class AddHeaterDlg(wx.Dialog):
self.tcPwm.SetFont(font)
self.tcPwm.Bind(wx.EVT_TEXT, self.onPWM)
lsz.Add(self.tcPwm)
self.tcPwm.SetToolTipString("Use Pulse Width Modulation. "
self.tcPwm.SetToolTip("Use Pulse Width Modulation. "
"Hardware PWM if available or "
"Software PWM. When FORCE_SOFTWARE_PWM "
"is set, always software PWM for 1 and "
"hardware PWM for >= 2.")
gsz.AddSpacer((50, 15), pos = (1, 2))
gsz.Add((50, 15), pos = (1, 2))
gsz.Add(lsz, pos = (1, 3))
gsz.AddSpacer((20, 20), pos = (4, 4))
gsz.Add((20, 20), pos = (4, 4))
sz.Add(gsz)
sz.AddSpacer((30, 30))
sz.Add((30, 30))
bsz = wx.BoxSizer(wx.HORIZONTAL)
@ -109,7 +109,7 @@ class AddHeaterDlg(wx.Dialog):
self.bSave.Bind(wx.EVT_BUTTON, self.onSave)
bsz.Add(self.bSave)
bsz.AddSpacer(30, 100)
bsz.Add(30, 100)
self.bCancel = wx.Button(self, wx.ID_ANY, "Cancel", size = BSIZESMALL)
self.bCancel.SetFont(font)
@ -117,7 +117,7 @@ class AddHeaterDlg(wx.Dialog):
bsz.Add(self.bCancel)
sz.Add(bsz, flag = wx.ALIGN_CENTER_HORIZONTAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
self.SetSizer(sz)
self.checkDlgValidity()
@ -135,7 +135,7 @@ class AddHeaterDlg(wx.Dialog):
self.nameValid = True
if self.nameValid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -158,7 +158,7 @@ class AddHeaterDlg(wx.Dialog):
self.maxPWMValid = False
if self.maxPWMValid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -179,14 +179,14 @@ class AddHeaterDlg(wx.Dialog):
self.pwmValid = False
if self.pwmValid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
self.checkDlgValidity()
if evt is not None:
evt.Skip()
evt.Skip()
def checkDlgValidity(self):
if (self.nameValid and self.maxPWMValid and self.pwmValid):
@ -202,7 +202,7 @@ class AddHeaterDlg(wx.Dialog):
invert = "1"
else:
invert = "0"
pwm = self.tcPwm.GetValue()
max_pwm = self.tcMaxPWM.GetValue()

View File

@ -52,10 +52,10 @@ class AddSensorDlg(wx.Dialog):
sizer = wx.BoxSizer(wx.VERTICAL)
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
csz = wx.BoxSizer(wx.VERTICAL)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Heater Name:", size = (labelWidth, -1),
@ -82,13 +82,13 @@ class AddSensorDlg(wx.Dialog):
self.tcName.SetFont(font)
self.tcName.Bind(wx.EVT_CHOICE, self.onHeaterName)
lsz.Add(self.tcName)
self.tcName.SetToolTipString("Choose the name of the corresponding heater. "
self.tcName.SetToolTip("Choose the name of the corresponding heater. "
"This may require to define that heater "
"first.")
self.tcName.SetSelection(0)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Sensor Type:", size = (labelWidth, -1),
@ -119,7 +119,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(ch)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Pin:", size = (labelWidth, -1),
@ -137,10 +137,10 @@ class AddSensorDlg(wx.Dialog):
else:
self.chPin.SetSelection(i)
lsz.Add(self.chPin)
self.chPin.SetToolTipString("Choose a pin name for this sensor.")
self.chPin.SetToolTip("Choose a pin name for this sensor.")
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -156,7 +156,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param0)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -171,7 +171,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param1)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -186,7 +186,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param2)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -201,7 +201,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param3)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -216,7 +216,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param4)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -231,7 +231,7 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param5)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "", size = (labelWidth, -1),
@ -246,15 +246,15 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(self.param6)
csz.Add(lsz)
csz.AddSpacer((10, 10))
csz.Add((10, 10))
csz.AddSpacer((10, 10))
csz.Add((10, 10))
hsz.Add(csz)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
csz = wx.BoxSizer(wx.VERTICAL)
csz.AddSpacer((30, 45))
csz.Add((30, 45))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Presets:",
@ -272,12 +272,12 @@ class AddSensorDlg(wx.Dialog):
lsz.Add(ch)
csz.Add(lsz)
csz.AddSpacer((10, 50))
csz.Add((10, 50))
b = wx.StaticBox(self, wx.ID_ANY, "Temp Table Algorithm")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
style = wx.RB_GROUP
self.rbMethod = []
for k in MethodLabels:
@ -288,13 +288,13 @@ class AddSensorDlg(wx.Dialog):
style = 0
sbox.Add(rb, 1, wx.LEFT + wx.RIGHT, 16)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
self.rbMethod[self.currentMethod].SetValue(True);
csz.Add(sbox)
hsz.Add(csz)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sizer.Add(hsz)
@ -306,7 +306,7 @@ class AddSensorDlg(wx.Dialog):
bsz.Add(self.bSave)
self.bSave.Enable(False)
bsz.AddSpacer((30, 10))
bsz.Add((30, 10))
self.bCancel = wx.Button(self, wx.ID_ANY, "Cancel", size = BSIZESMALL)
self.bCancel.SetFont(font)
@ -314,7 +314,7 @@ class AddSensorDlg(wx.Dialog):
bsz.Add(self.bCancel)
sizer.Add(bsz, flag = wx.ALIGN_CENTER_HORIZONTAL)
sizer.AddSpacer((10, 10))
sizer.Add((10, 10))
self.SetSizer(sizer)
self.Fit()
@ -367,7 +367,7 @@ class AddSensorDlg(wx.Dialog):
valid = False
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
@ -391,7 +391,7 @@ class AddSensorDlg(wx.Dialog):
valid = False
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -518,58 +518,58 @@ class AddSensorDlg(wx.Dialog):
def setDialogMode(self):
if self.currentMode == MODE_THERMISTOR:
if self.currentMethod == METHOD_BETA:
self.param0.SetToolTipString("Nominal resistance of the thermistor. "
self.param0.SetToolTip("Nominal resistance of the thermistor. "
"Typically 10000 ( = 10k) or 100000 "
"( = 100k).")
self.label0.SetLabel("R0:")
self.param1.SetToolTipString("Thermistor beta value. Can be found in "
self.param1.SetToolTip("Thermistor beta value. Can be found in "
"the datasheet or measured like described "
"in http://reprap.org/wiki/"
"MeasuringThermistorBeta")
self.label1.SetLabel("Beta:")
self.param2.SetToolTipString("Resistance value of the secondary "
self.param2.SetToolTip("Resistance value of the secondary "
"resistor. This is not a property of the "
"thermistor, but one of the board. "
"Typical values are 4700 ( = 4k7 ohms) "
"or 1000 ( = 1k ohms).")
self.label2.SetLabel("R2:")
self.param3.SetToolTipString("Comparison voltage used by the "
self.param3.SetToolTip("Comparison voltage used by the "
"controller. Usually the same as the "
"controller's supply voltage, 3.3 or 5.0 "
"(volts).")
self.label3.SetLabel("Vadc:")
self.label4.SetLabel("")
self.param4.SetToolTip(None)
self.param4.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
self.param4.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param4.Refresh()
self.label5.SetLabel("")
self.param5.SetToolTip(None)
self.param5.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
self.param5.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param5.Refresh()
self.label6.SetLabel("")
self.param6.SetToolTip(None)
self.param6.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
self.param6.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param6.Refresh()
self.param4.Enable(False)
self.param5.Enable(False)
self.param6.Enable(False)
else:
self.param0.SetToolTipString("Reference resistance value.")
self.param0.SetToolTip("Reference resistance value.")
self.label0.SetLabel("Rp:")
self.param1.SetToolTipString("First data point, temperature at which "
self.param1.SetToolTip("First data point, temperature at which "
"resistance is equal to R0.")
self.label1.SetLabel("T0:")
self.param2.SetToolTipString("Resistance when temperature is T0.")
self.param2.SetToolTip("Resistance when temperature is T0.")
self.label2.SetLabel("R0:")
self.param3.SetToolTipString("Second data point, temperature at which "
self.param3.SetToolTip("Second data point, temperature at which "
"resistance is equal to R1.")
self.label3.SetLabel("T1:")
self.param4.SetToolTipString("Resistance when temperature is T1.")
self.param4.SetToolTip("Resistance when temperature is T1.")
self.label4.SetLabel("R1:")
self.param5.SetToolTipString("Third data point, temperature at which "
self.param5.SetToolTip("Third data point, temperature at which "
"resistance is equal to R2.")
self.label5.SetLabel("T2:")
self.param6.SetToolTipString("Resistance when temperature is T2.")
self.param6.SetToolTip("Resistance when temperature is T2.")
self.label6.SetLabel("R2:")
self.param4.Enable(True)
self.param5.Enable(True)
@ -601,43 +601,43 @@ class AddSensorDlg(wx.Dialog):
self.param0.SetToolTip(None)
self.label0.SetLabel("")
self.param0.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param0.Refresh()
self.param1.SetToolTip(None)
self.label1.SetLabel("")
self.param1.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param1.Refresh()
self.param2.SetToolTip(None)
self.label2.SetLabel("")
self.param2.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param2.Refresh()
self.param3.SetToolTip(None)
self.label3.SetLabel("")
self.param3.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param3.Refresh()
self.param4.SetToolTip(None)
self.label4.SetLabel("")
self.param4.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param4.Refresh()
self.param5.SetToolTip(None)
self.label5.SetLabel("")
self.param5.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param5.Refresh()
self.param6.SetToolTip(None)
self.label6.SetLabel("")
self.param6.SetBackgroundColour(
wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
self.param6.Refresh()
self.param0.Enable(False);

View File

@ -165,7 +165,7 @@ class BoardPanel(wx.Panel):
dlg = wx.FileDialog(self, message = "Choose a board config file",
defaultDir = self.dir, defaultFile = "",
wildcard = wildcard, style = wx.OPEN | wx.CHANGE_DIR)
wildcard = wildcard, style = wx.FD_OPEN | wx.FD_CHANGE_DIR)
path = None
if dlg.ShowModal() == wx.ID_OK:

View File

@ -164,10 +164,10 @@ class Build(wx.Dialog):
self.cancelPending = False
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sz = wx.BoxSizer(wx.VERTICAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
tc = wx.TextCtrl(self, wx.ID_ANY, size = (900, 300),
style = wx.TE_READONLY + wx.TE_MULTILINE)
@ -177,9 +177,9 @@ class Build(wx.Dialog):
tc.SetFont(f)
self.log = tc
sz.AddSpacer((10, 10))
sz.Add((10, 10))
hsz.Add(sz, 1, wx.EXPAND)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
self.SetSizer(hsz)
@ -384,10 +384,10 @@ class Upload(wx.Dialog):
self.cancelPending = False
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sz = wx.BoxSizer(wx.VERTICAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
tc = wx.TextCtrl(self, wx.ID_ANY, size = (900, 300),
style = wx.TE_READONLY + wx.TE_MULTILINE)
@ -397,9 +397,9 @@ class Upload(wx.Dialog):
tc.SetFont(f)
self.log = tc
sz.AddSpacer((10, 10))
sz.Add((10, 10))
hsz.Add(sz, 1, wx.EXPAND)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
self.SetSizer(hsz)

View File

@ -16,17 +16,17 @@ class CalcBelt(wx.Dialog):
labelWidth = 130
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sz = wx.BoxSizer(wx.VERTICAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Step Angle:", size = (labelWidth, -1),
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetChLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
stepAngles = ["1.8 (200 per revolution)", "0.9 (400 per revolution)",
"7.5 (48 per revolution)"]
@ -36,18 +36,18 @@ class CalcBelt(wx.Dialog):
tc.SetSelection(0)
tc.Bind(wx.EVT_CHOICE, self.onChoice)
lsz.Add(tc)
tc.SetToolTipString("Step angle. Depends on your type of stepper motor.")
tc.SetToolTip("Step angle. Depends on your type of stepper motor.")
self.tcStep = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Microstepping:",
size = (labelWidth, -1), style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetChLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
microStepping = ["1 - full step", "1/2 - half step", "1/4 - quarter step",
"1/8", "1/16", "1/32", "1/64", "1/128"]
@ -57,30 +57,30 @@ class CalcBelt(wx.Dialog):
tc.Bind(wx.EVT_CHOICE, self.onChoice)
tc.SetSelection(4)
lsz.Add(tc)
tc.SetToolTipString("Microstepping. Most boards allow to change this by "
tc.SetToolTip("Microstepping. Most boards allow to change this by "
"setting jumpers. The value here must match the "
"setting on the board in conjunction with the type "
"of stepper driver chip.")
self.tcMicroStepping = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Belt Pitch (in mm):",
size = (labelWidth, -1), style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetTcLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.TextCtrl(self, wx.ID_ANY, "2", style = wx.TE_RIGHT)
tc.SetFont(font)
tc.Bind(wx.EVT_TEXT, self.onTextCtrlFloat)
lsz.Add(tc)
tc.SetToolTipString("Belt pitch. Distance between two teeth on the belt.")
tc.SetToolTip("Belt pitch. Distance between two teeth on the belt.")
self.tcBeltPitch = tc
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
beltPresets = ["-", "2mm Pitch (GT2)", "MXL Pitch (2.03mm)",
"T2.5 (2.5mm)", "3mm Pitch (GT2, HTD)",
@ -91,35 +91,35 @@ class CalcBelt(wx.Dialog):
tc.SetSelection(0)
tc.Bind(wx.EVT_CHOICE, self.onPresetChoice)
lsz.Add(tc)
tc.SetToolTipString("Belt pitch presets.")
tc.SetToolTip("Belt pitch presets.")
self.tcPresets = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Pulley Teeth Count:",
size = (labelWidth, -1), style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetTcLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.TextCtrl(self, wx.ID_ANY, "8", style = wx.TE_RIGHT)
tc.SetFont(font)
tc.Bind(wx.EVT_TEXT, self.onTextCtrlInteger)
lsz.Add(tc)
tc.SetToolTipString("Pulley teeth count. Count them!")
tc.SetToolTip("Pulley teeth count. Count them!")
self.tcPulleyTeeth = tc
sz.Add(lsz)
sz.AddSpacer((30, 30))
sz.Add((30, 30))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Result:", size = (labelWidth, -1),
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.StaticText(self, wx.ID_ANY, "", size = (260, -1),
style = wx.ALIGN_LEFT)
@ -133,7 +133,7 @@ class CalcBelt(wx.Dialog):
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.StaticText(self, wx.ID_ANY, "", size = (260, -1),
style = wx.ALIGN_LEFT)
@ -143,7 +143,7 @@ class CalcBelt(wx.Dialog):
sz.Add(lsz)
sz.AddSpacer((20, 20))
sz.Add((20, 20))
bsz = wx.BoxSizer(wx.HORIZONTAL)
b = wx.Button(self, wx.ID_ANY, "Use for X", size = BSIZESMALL)
@ -151,21 +151,21 @@ class CalcBelt(wx.Dialog):
self.Bind(wx.EVT_BUTTON, self.onUseForX, b)
bsz.Add(b)
self.bUseForX = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for Y", size = BSIZESMALL)
b.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.onUseForY, b)
bsz.Add(b)
self.bUseForY = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for Z", size = BSIZESMALL)
b.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.onUseForZ, b)
bsz.Add(b)
self.bUseForZ = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for E", size = BSIZESMALL)
b.SetFont(font)
@ -174,10 +174,10 @@ class CalcBelt(wx.Dialog):
self.bUseForE = b
sz.Add(bsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
hsz.Add(sz)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
self.enableUseButtons(False)
@ -265,7 +265,7 @@ class CalcBelt(wx.Dialog):
valid = False
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -285,7 +285,7 @@ class CalcBelt(wx.Dialog):
valid = False
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()

View File

@ -15,17 +15,17 @@ class CalcScrew(wx.Dialog):
labelWidth = 150
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sz = wx.BoxSizer(wx.VERTICAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Step Angle:", size = (labelWidth, -1),
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetChLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
stepAngles = ["1.8 (200 per revolution)", "0.9 (400 per revolution)",
"7.5 (48 per revolution)"]
@ -35,18 +35,18 @@ class CalcScrew(wx.Dialog):
tc.SetSelection(0)
tc.Bind(wx.EVT_CHOICE, self.onChoice)
lsz.Add(tc)
tc.SetToolTipString("Step angle. Depends on your type of stepper motor.")
tc.SetToolTip("Step angle. Depends on your type of stepper motor.")
self.tcStep = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Microstepping:",
size = (labelWidth, -1), style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetChLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
microStepping = ["1 - full step", "1/2 - half step", "1/4 - quarter step",
"1/8", "1/16", "1/32", "1/64", "1/128"]
@ -56,30 +56,30 @@ class CalcScrew(wx.Dialog):
tc.Bind(wx.EVT_CHOICE, self.onChoice)
tc.SetSelection(4)
lsz.Add(tc)
tc.SetToolTipString("Microstepping. Most boards allow to change this by "
tc.SetToolTip("Microstepping. Most boards allow to change this by "
"setting jumpers. The value here must match the "
"setting on the board in conjunction with the type "
"of stepper driver chip.")
self.tcMicroStepping = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Screw Pitch (mm/rev):",
size = (labelWidth, -1), style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetTcLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.TextCtrl(self, wx.ID_ANY, "2", style = wx.TE_RIGHT)
tc.SetFont(font)
tc.Bind(wx.EVT_TEXT, self.onTextCtrlFloat)
lsz.Add(tc)
tc.SetToolTipString("Screw pitch. Defined by the pitch of the screw.")
tc.SetToolTip("Screw pitch. Defined by the pitch of the screw.")
self.tcScrewPitch = tc
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
screwPresets = ["-", "M8 - metric (1.25 mm/rev)", "M6 - metric (1 mm/rev)",
"M5 - metric (0.8 mm/rev)", "12 (12 mm/rev)",
@ -94,48 +94,48 @@ class CalcScrew(wx.Dialog):
tc.SetSelection(0)
tc.Bind(wx.EVT_CHOICE, self.onPresetChoice)
lsz.Add(tc)
tc.SetToolTipString("Screw pitch presets.")
tc.SetToolTip("Screw pitch presets.")
self.tcPresets = tc
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Gear Ratio:", size = (labelWidth, -1),
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st, 1, wx.TOP, offsetTcLabel)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.TextCtrl(self, wx.ID_ANY, "1", size = (40, -1), style = wx.TE_RIGHT)
tc.SetFont(font)
tc.Bind(wx.EVT_TEXT, self.onTextCtrlFloat)
lsz.Add(tc)
tc.SetToolTipString("Gear ratio. 1:1 if there is no gear.")
tc.SetToolTip("Gear ratio. 1:1 if there is no gear.")
self.tcRatioTop = tc
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
st = wx.StaticText(self, wx.ID_ANY, ":")
st.SetFont(font)
lsz.Add(st)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.TextCtrl(self, wx.ID_ANY, "1", size = (40, -1), style = wx.TE_RIGHT)
tc.SetFont(font)
tc.Bind(wx.EVT_TEXT, self.onTextCtrlFloat)
lsz.Add(tc)
tc.SetToolTipString("Gear ratio. 1:1 if there is no gear.")
tc.SetToolTip("Gear ratio. 1:1 if there is no gear.")
self.tcRatioBottom = tc
sz.Add(lsz)
sz.AddSpacer((30, 30))
sz.Add((30, 30))
lsz = wx.BoxSizer(wx.HORIZONTAL)
st = wx.StaticText(self, wx.ID_ANY, "Result:", size = (labelWidth, -1),
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.StaticText(self, wx.ID_ANY, "", size = (300, -1),
style = wx.ALIGN_LEFT)
@ -149,7 +149,7 @@ class CalcScrew(wx.Dialog):
style = wx.ALIGN_RIGHT)
st.SetFont(font)
lsz.Add(st)
lsz.AddSpacer((5, 5))
lsz.Add((5, 5))
tc = wx.StaticText(self, wx.ID_ANY, "", size = (300, -1),
style = wx.ALIGN_LEFT)
@ -159,7 +159,7 @@ class CalcScrew(wx.Dialog):
sz.Add(lsz)
sz.AddSpacer((20, 20))
sz.Add((20, 20))
bsz = wx.BoxSizer(wx.HORIZONTAL)
b = wx.Button(self, wx.ID_ANY, "Use for X", size = BSIZESMALL)
@ -167,21 +167,21 @@ class CalcScrew(wx.Dialog):
self.Bind(wx.EVT_BUTTON, self.onUseForX, b)
bsz.Add(b)
self.bUseForX = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for Y", size = BSIZESMALL)
b.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.onUseForY, b)
bsz.Add(b)
self.bUseForY = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for Z", size = BSIZESMALL)
b.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.onUseForZ, b)
bsz.Add(b)
self.bUseForZ = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Use for E", size = BSIZESMALL)
b.SetFont(font)
@ -190,10 +190,10 @@ class CalcScrew(wx.Dialog):
self.bUseForE = b
sz.Add(bsz, flag = wx.ALIGN_CENTER_HORIZONTAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
hsz.Add(sz)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
self.enableUseButtons(False)
@ -285,7 +285,7 @@ class CalcScrew(wx.Dialog):
valid = False
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()

View File

@ -17,7 +17,7 @@ class CommunicationsPage(wx.Panel, Page):
'USB_SERIAL': "USB Serial"}
sz = wx.GridBagSizer()
sz.AddSpacer((20, 40), pos = (0, 0))
sz.Add((20, 40), pos = (0, 0))
k = 'USB_SERIAL'
cb = self.addCheckBox(k, self.onUSBCheckBox)
@ -30,7 +30,7 @@ class CommunicationsPage(wx.Panel, Page):
cb = self.addCheckBox('XONXOFF', self.onCheckBox)
sz.Add(cb, pos = (3, 3))
sz.AddSpacer((100, 10), pos = (2, 2))
sz.Add((100, 10), pos = (2, 2))
self.SetSizer(sz)
self.enableAll(False)

View File

@ -15,12 +15,12 @@ class CpuPage(wx.Panel, Page):
self.processors = []
sz = wx.GridBagSizer()
sz.AddSpacer((20, 40), pos = (0, 0))
sz.Add((20, 40), pos = (0, 0))
k = 'F_CPU'
ch = self.addChoice(k, self.clocks, 0, 100, self.onChoice, size = (140, -1))
sz.Add(ch, pos = (1, 1))
sz.AddSpacer((100, 10), pos = (1, 2))
sz.Add((100, 10), pos = (1, 2))
k = 'CPU'
ch = self.addChoice(k, self.processors, 0, 100, self.onChoice,

View File

@ -29,12 +29,12 @@ class DisplayPage(wx.Panel, Page):
'DISPLAY_D7_PIN': "D7 pin"}
sz = wx.GridBagSizer()
sz.AddSpacer((20, 40), pos = (0, 0))
sz.Add((20, 40), pos = (0, 0))
ch = self.addBoolChoice('DISPLAY_BUS', True, 100, self.onBusChoice,
size = (160, -1))
sz.Add(ch, pos = (1, 1))
sz.AddSpacer((100, 10), pos = (1, 2))
sz.Add((100, 10), pos = (1, 2))
ch = self.addBoolChoice('DISPLAY_TYPE', False, 100, self.onChoice,
size = (240, -1))
@ -43,13 +43,13 @@ class DisplayPage(wx.Panel, Page):
b = wx.StaticBox(self, wx.ID_ANY, "Direct 4-bit Bus Pins:")
b.SetFont(font)
self.pinbox = wx.StaticBoxSizer(b, wx.VERTICAL)
self.pinbox.AddSpacer((5, 5))
self.pinbox.Add((5, 5))
for k in ('DISPLAY_RS_PIN', 'DISPLAY_RW_PIN', 'DISPLAY_E_PIN',
'DISPLAY_D4_PIN', 'DISPLAY_D5_PIN', 'DISPLAY_D6_PIN',
'DISPLAY_D7_PIN'):
tc = self.addPinChoice(k, 200)
self.pinbox.Add(tc)
self.pinbox.AddSpacer((5, 5))
self.pinbox.Add((5, 5))
sz.Add(self.pinbox, pos = (3, 1))
self.SetSizer(sz)

View File

@ -6,7 +6,7 @@ try:
except:
print("ImportError: No module named wx\n\n"
"wxPython is not installed. This program requires wxPython to run.\n"
"See your package manager and/or http://wxpython.org/download.php.")
"See your package manager and/or https://wxpython.org/pages/downloads/.")
time.sleep(10)
sys.exit(-1)

View File

@ -17,20 +17,20 @@ class HeatersPage(wx.Panel, Page):
self.labels = {'FORCE_SOFTWARE_PWM':"Force software PWM"}
sz = wx.GridBagSizer()
sz.AddSpacer((30, 30), pos = (0, 0))
sz.Add((30, 30), pos = (0, 0))
self.heaters = []
self.validPins = pinNames
self.lb = HeaterList(self, font)
sz.Add(self.lb, pos = (1, 1))
sz.AddSpacer((20, 20), pos = (1, 2))
sz.Add((20, 20), pos = (1, 2))
k = 'FORCE_SOFTWARE_PWM'
cb = self.addCheckBox(k, self.onCheckBox)
sz.Add(cb, pos = (2, 1))
sz.AddSpacer((20, 20), pos = (2, 2))
sz.Add((20, 20), pos = (2, 2))
bsz = wx.BoxSizer(wx.VERTICAL)
@ -38,27 +38,27 @@ class HeatersPage(wx.Panel, Page):
self.bAdd.SetBackgroundColour(self.deco.getBackgroundColour())
self.bAdd.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.doAdd, self.bAdd)
self.bAdd.SetToolTipString("Add a heater to the configuration.")
self.bAdd.SetToolTip("Add a heater to the configuration.")
bsz.Add(self.bAdd)
bsz.AddSpacer((10, 10))
bsz.Add((10, 10))
self.bModify = wx.Button(self, wx.ID_ANY, "Modify", size = BSIZESMALL)
self.bModify.SetBackgroundColour(self.deco.getBackgroundColour())
self.bModify.SetFont(font)
self.bModify.Enable(False)
self.Bind(wx.EVT_BUTTON, self.doModify, self.bModify)
self.bModify.SetToolTipString("Modify the selected heater.")
self.bModify.SetToolTip("Modify the selected heater.")
bsz.Add(self.bModify)
bsz.AddSpacer((10, 10))
bsz.Add((10, 10))
self.bDelete = wx.Button(self, wx.ID_ANY, "Delete", size = BSIZESMALL)
self.bDelete.SetBackgroundColour(self.deco.getBackgroundColour())
self.bDelete.SetFont(font)
self.bDelete.Enable(False)
self.Bind(wx.EVT_BUTTON, self.doDelete, self.bDelete)
self.bDelete.SetToolTipString("Remove the selected heater from the "
self.bDelete.SetToolTip("Remove the selected heater from the "
"configuration.")
bsz.Add(self.bDelete)
@ -186,4 +186,4 @@ class HeatersPage(wx.Panel, Page):
k = 'DEFINE_HEATER'
if k in ht.keys():
self.bAdd.SetToolTipString(ht[k])
self.bAdd.SetToolTip(ht[k])

View File

@ -62,61 +62,61 @@ class MechanicalPage(wx.Panel, Page):
labelWidthHoming = 60;
sz = wx.GridBagSizer()
sz.AddSpacer((10, 10), pos = (0, 0))
sz.AddSpacer((90, 10), pos = (0, 4))
sz.Add((10, 10), pos = (0, 0))
sz.Add((90, 10), pos = (0, 4))
b = wx.StaticBox(self, wx.ID_ANY, "Steps Per Meter")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.spmKeys:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 1))
b = wx.StaticBox(self, wx.ID_ANY, "Maximum Feedrate")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.mfrKeys:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 5))
b = wx.StaticBox(self, wx.ID_ANY, "Search Feedrate")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.msrKeys:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 7))
b = wx.StaticBox(self, wx.ID_ANY, "Endstop Clearance")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.eclKeys:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (3, 5))
b = wx.StaticBox(self, wx.ID_ANY, "Travel Limits")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k in self.minmaxKeys:
tc = self.addTextCtrl(k, labelWidth + 20, self.onTextCtrlFloat)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (3, 7))
@ -125,14 +125,14 @@ class MechanicalPage(wx.Panel, Page):
b = wx.StaticBox(self, wx.ID_ANY, "Kinematics")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
style = wx.RB_GROUP
for k in self.kinematicsKeys:
rb = self.addRadioButton(k, style, self.onKinematicsSelect, b)
style = 0
sbox.Add(rb, 1, wx.LEFT + wx.RIGHT, 16)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
vsz.Add(sbox, 1, wx.LEFT, 10)
@ -146,7 +146,7 @@ class MechanicalPage(wx.Panel, Page):
b = wx.Button(self, wx.ID_ANY, "Calculate\nBelt Driven", size = BSIZE)
b.SetBackgroundColour(self.deco.getBackgroundColour())
b.SetFont(font)
b.SetToolTipString("Open the calculator for axes that are belt-driven.")
b.SetToolTip("Open the calculator for axes that are belt-driven.")
self.Bind(wx.EVT_BUTTON, self.onCalcBelt, b)
self.bCalcBelt = b
@ -155,7 +155,7 @@ class MechanicalPage(wx.Panel, Page):
b.SetBackgroundColour(self.deco.getBackgroundColour())
b.SetFont(font)
bsz.Add(b, 1, wx.ALL, 5)
b.SetToolTipString("Open the calculator for axes that are screw-driven.")
b.SetToolTip("Open the calculator for axes that are screw-driven.")
self.Bind(wx.EVT_BUTTON, self.onCalcScrew, b)
self.bCalcScrew = b
@ -164,12 +164,12 @@ class MechanicalPage(wx.Panel, Page):
b = wx.StaticBox(self, wx.ID_ANY, "Homing Order")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k, ctype in self.homingKeys:
if ctype == 2:
tc = self.addChoice(k, [], 0, labelWidthHoming, self.onChoice)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (3, 3))
self.enableAll(False)
@ -206,7 +206,7 @@ class MechanicalPage(wx.Panel, Page):
Page.setHelpText(self, ht)
if 'KINEMATICS' in ht.keys():
for k in self.kinematicsKeys:
self.radioButtons[k].SetToolTipString(ht['KINEMATICS'])
self.radioButtons[k].SetToolTip(ht['KINEMATICS'])
def prepareHomingValues(self, name, i, cfgValues):
self.choices[name].Clear()

View File

@ -38,17 +38,17 @@ class MiscellaneousPage(wx.Panel, Page):
self.processors = []
sz = wx.GridBagSizer()
sz.AddSpacer((20, 40), pos = (0, 0))
sz.AddSpacer((40, 40), pos = (0, 2))
sz.AddSpacer((40, 40), pos = (0, 4))
sz.AddSpacer((20, 30), pos = (1, 0))
sz.AddSpacer((20, 30), pos = (2, 0))
sz.AddSpacer((20, 30), pos = (3, 0))
sz.AddSpacer((20, 30), pos = (4, 0))
sz.AddSpacer((20, 30), pos = (5, 0))
sz.AddSpacer((20, 30), pos = (6, 0))
sz.AddSpacer((20, 30), pos = (7, 0))
sz.AddSpacer((20, 30), pos = (8, 0))
sz.Add((20, 40), pos = (0, 0))
sz.Add((40, 40), pos = (0, 2))
sz.Add((40, 40), pos = (0, 4))
sz.Add((20, 30), pos = (1, 0))
sz.Add((20, 30), pos = (2, 0))
sz.Add((20, 30), pos = (3, 0))
sz.Add((20, 30), pos = (4, 0))
sz.Add((20, 30), pos = (5, 0))
sz.Add((20, 30), pos = (6, 0))
sz.Add((20, 30), pos = (7, 0))
sz.Add((20, 30), pos = (8, 0))
labelWidth = 140
@ -87,39 +87,39 @@ class MiscellaneousPage(wx.Panel, Page):
b = wx.StaticBox(self, wx.ID_ANY, "BANG BANG Bed Control")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'BANG_BANG'
cb = self.addCheckBox(k, self.onCheckBox)
sbox.Add(cb, 1, wx.LEFT, 60)
sbox.AddSpacer((5, 20))
sbox.Add((5, 20))
k = 'BANG_BANG_ON'
tc = self.addTextCtrl(k, 100, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'BANG_BANG_OFF'
tc = self.addTextCtrl(k, 100, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 3), span = (5, 1), flag = wx.ALIGN_CENTER_HORIZONTAL)
b = wx.StaticBox(self, wx.ID_ANY, "DC Motor Extruder")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'DC_EXTRUDER'
ch = self.addChoice(k, self.heaterNames, 0, 60, self.onChoice)
sbox.Add(ch)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
k = 'DC_EXTRUDER_PWM'
tc = self.addTextCtrl(k, 60, self.onTextCtrlInteger)
sbox.Add(tc)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (6, 3), span=(3, 1), flag = wx.ALIGN_CENTER_HORIZONTAL)

View File

@ -163,7 +163,7 @@ class Page:
self.setFieldValidity(name, valid)
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -186,7 +186,7 @@ class Page:
self.setFieldValidity(name, valid)
if valid:
tc.SetBackgroundColour(wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW))
tc.SetBackgroundColour(wx.SystemSettings.GetColour(wx.SYS_COLOUR_WINDOW))
else:
tc.SetBackgroundColour("pink")
tc.Refresh()
@ -213,26 +213,26 @@ class Page:
def setHelpText(self, ht):
for k in self.textControls.keys():
if k in ht.keys():
self.textControls[k].SetToolTipString(ht[k])
self.textControls[k].SetToolTip(ht[k])
for k in self.checkBoxes.keys():
if k in ht.keys():
self.checkBoxes[k].SetToolTipString(ht[k])
self.checkBoxes[k].SetToolTip(ht[k])
for k in self.radioButtons.keys():
if k in ht.keys():
self.radioButtons[k].SetToolTipString(ht[k])
self.radioButtons[k].SetToolTip(ht[k])
if k in self.radioButtonBoxes.keys():
self.radioButtonBoxes[k].SetToolTipString(ht[k])
self.radioButtonBoxes[k].SetToolTip(ht[k])
for k in self.choices.keys():
if k in ht.keys():
self.choices[k].SetToolTipString(ht[k])
self.choices[k].SetToolTip(ht[k])
for k in self.boolChoices.keys():
for candidate in ht.keys():
if candidate.startswith(k):
self.boolChoices[k].SetToolTipString(ht[candidate])
self.boolChoices[k].SetToolTip(ht[candidate])
break
def insertValues(self, cfgValues):

View File

@ -67,12 +67,12 @@ class PinoutsPage(wx.Panel, Page):
labelWidth = 120
sz = wx.GridBagSizer()
sz.AddSpacer((10, 10), pos = (0, 0))
sz.Add((10, 10), pos = (0, 0))
b = wx.StaticBox(self, wx.ID_ANY, "X Axis")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k, ctype in pinXkeys:
if ctype == 0:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlPin)
@ -84,14 +84,14 @@ class PinoutsPage(wx.Panel, Page):
cb = self.addCheckBox(k, self.onCheckBox)
sbox.Add(cb, 1, wx.LEFT, 30)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 1))
b = wx.StaticBox(self, wx.ID_ANY, "Y Axis")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k, ctype in pinYkeys:
if ctype == 0:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlPin)
@ -103,14 +103,14 @@ class PinoutsPage(wx.Panel, Page):
cb = self.addCheckBox(k, self.onCheckBox)
sbox.Add(cb, 1, wx.LEFT, 30)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 3))
b = wx.StaticBox(self, wx.ID_ANY, "Z Axis")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k, ctype in pinZkeys:
if ctype == 0:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlPin)
@ -122,14 +122,14 @@ class PinoutsPage(wx.Panel, Page):
cb = self.addCheckBox(k, self.onCheckBox)
sbox.Add(cb, 1, wx.LEFT, 30)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 5))
b = wx.StaticBox(self, wx.ID_ANY, "E Axis")
b.SetFont(font)
sbox = wx.StaticBoxSizer(b, wx.VERTICAL)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
for k, ctype in pinEkeys:
if ctype == 0:
tc = self.addTextCtrl(k, labelWidth, self.onTextCtrlPin)
@ -141,7 +141,7 @@ class PinoutsPage(wx.Panel, Page):
cb = self.addCheckBox(k, self.onCheckBox)
sbox.Add(cb, 1, wx.LEFT, 30)
sbox.AddSpacer((5, 5))
sbox.Add((5, 5))
sz.Add(sbox, pos = (1, 7))
@ -149,7 +149,7 @@ class PinoutsPage(wx.Panel, Page):
tc = self.addPinChoice(k, labelWidth + 20)
sz.Add(tc, pos = (3, 1))
sz.AddSpacer((10, 10), pos = (4, 1))
sz.Add((10, 10), pos = (4, 1))
k = "STEPPER_INVERT_ENABLE"
cb = self.addCheckBox(k, self.onCheckBox)

View File

@ -148,7 +148,7 @@ class PrinterPanel(wx.Panel):
dlg = wx.FileDialog(self, message = "Choose a printer config file",
defaultDir = self.dir, defaultFile = "",
wildcard = wildcard, style = wx.OPEN | wx.CHANGE_DIR)
wildcard = wildcard, style = wx.FD_OPEN | wx.FD_CHANGE_DIR)
path = None
if dlg.ShowModal() == wx.ID_OK:

View File

@ -30,13 +30,13 @@ class SensorsPage(wx.Panel, Page):
labelWidth = 120
sz = wx.GridBagSizer()
sz.AddSpacer((10, 10), pos = (0, 0))
sz.Add((10, 10), pos = (0, 0))
self.sensors = []
self.lb = SensorList(self, font)
sz.Add(self.lb, pos = (1, 1))
sz.AddSpacer((20, 20), pos = (1, 2))
sz.Add((20, 20), pos = (1, 2))
bsz = wx.BoxSizer(wx.VERTICAL)
self.bAdd = wx.Button(self, wx.ID_ANY, "Add", size = BSIZESMALL)
@ -44,27 +44,27 @@ class SensorsPage(wx.Panel, Page):
self.bAdd.SetFont(font)
self.Bind(wx.EVT_BUTTON, self.doAdd, self.bAdd)
self.bAdd.Enable(False)
self.bAdd.SetToolTipString("Add a sensor to the configuration.")
self.bAdd.SetToolTip("Add a sensor to the configuration.")
bsz.Add(self.bAdd)
bsz.AddSpacer((10, 10))
bsz.Add((10, 10))
self.bModify = wx.Button(self, wx.ID_ANY, "Modify", size = BSIZESMALL)
self.bModify.SetBackgroundColour(self.deco.getBackgroundColour())
self.bModify.SetFont(font)
self.bModify.Enable(False)
self.Bind(wx.EVT_BUTTON, self.doModify, self.bModify)
bsz.Add(self.bModify)
self.bModify.SetToolTipString("Modify the selected temperature sensor.")
self.bModify.SetToolTip("Modify the selected temperature sensor.")
bsz.AddSpacer((10, 10))
bsz.Add((10, 10))
self.bDelete = wx.Button(self, wx.ID_ANY, "Delete", size = BSIZESMALL)
self.bDelete.SetBackgroundColour(self.deco.getBackgroundColour())
self.bDelete.SetFont(font)
self.bDelete.Enable(False)
self.Bind(wx.EVT_BUTTON, self.doDelete, self.bDelete)
bsz.Add(self.bDelete)
self.bDelete.SetToolTipString("Remove the selected temperature sensor "
self.bDelete.SetToolTip("Remove the selected temperature sensor "
"from the configuration.")
sz.Add(bsz, pos = (1, 3))
@ -179,7 +179,7 @@ class SensorsPage(wx.Panel, Page):
k = 'DEFINE_TEMP_SENSOR'
if k in ht.keys():
self.bAdd.SetToolTipString(ht[k])
self.bAdd.SetToolTip(ht[k])
def getValues(self):
result = Page.getValues(self)

View File

@ -77,10 +77,10 @@ class SettingsDlg(wx.Dialog):
self.teList = []
hsz = wx.BoxSizer(wx.HORIZONTAL)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
sz = wx.BoxSizer(wx.VERTICAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
labelWidth = 140
for f in self.fields:
@ -90,18 +90,18 @@ class SettingsDlg(wx.Dialog):
t.SetFont(settings.font)
lsz.Add(t, 1, wx.TOP, offsetTcLabel)
lsz.AddSpacer((8, 8))
lsz.Add((8, 8))
te = wx.TextCtrl(self, wx.ID_ANY, f[1], size = (600, -1))
te.Bind(wx.EVT_TEXT, self.onTextCtrl)
te.SetToolTipString(f[2])
te.SetToolTip(f[2])
lsz.Add(te)
self.teList.append(te)
sz.Add(lsz)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
sz.AddSpacer((20, 20))
sz.Add((20, 20))
bsz = wx.BoxSizer(wx.HORIZONTAL)
b = wx.Button(self, wx.ID_ANY, "Save", size = BSIZESMALL)
@ -109,7 +109,7 @@ class SettingsDlg(wx.Dialog):
self.Bind(wx.EVT_BUTTON, self.onSave, b)
bsz.Add(b)
self.bSave = b
bsz.AddSpacer((5, 5))
bsz.Add((5, 5))
b = wx.Button(self, wx.ID_ANY, "Exit", size = BSIZESMALL)
b.SetFont(settings.font)
@ -118,10 +118,10 @@ class SettingsDlg(wx.Dialog):
self.bExit = b
sz.Add(bsz, 1, wx.ALIGN_CENTER_HORIZONTAL)
sz.AddSpacer((10, 10))
sz.Add((10, 10))
hsz.Add(sz)
hsz.AddSpacer((10, 10))
hsz.Add((10, 10))
self.SetSizer(hsz)
self.setModified(False)