Skip to content

Commit f6fe40b

Browse files
committed
Ajout boite de dialogue tool change
1 parent 0c975cc commit f6fe40b

26 files changed

+86820
-84229
lines changed

cn5X.py

+23-1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
from grblG28_30_1 import dlgG28_30_1
5151
from cn5X_jog import dlgJog
5252
from cn5X_beep import cn5XBeeper
53+
from cn5X_toolChange import dlgToolChange
5354

5455
class upperCaseValidator(QValidator):
5556
def validate(self, string, pos):
@@ -239,6 +240,7 @@ def arretUrgence():
239240
self.ui.mnuG92_1.triggered.connect(self.on_mnuG92_1)
240241

241242
self.ui.mnuJog_to.triggered.connect(self.on_mnuJog_to)
243+
self.ui.mnuToolChange.triggered.connect(self.on_mnuToolChange)
242244

243245
# Sous-menu G28/G30
244246
self.ui.mnuPredefinedLocations.aboutToShow.connect(self.on_mnuPredefinedLocations)
@@ -603,17 +605,20 @@ def on_mnuBar(self):
603605
self.ui.mnuSet_origine.setEnabled(False)
604606
self.ui.mnuPredefinedLocations.setEnabled(False)
605607
self.ui.mnuJog_to.setEnabled(False)
608+
self.ui.mnuToolChange.setEnabled(False)
606609
else:
607610
self.ui.mnu_GrblConfig.setEnabled(False)
608611
self.ui.mnuSet_origine.setEnabled(True)
609612
self.ui.mnuPredefinedLocations.setEnabled(True)
610613
self.ui.mnuJog_to.setEnabled(True)
614+
self.ui.mnuToolChange.setEnabled(True)
611615
else:
612616
self.ui.mnu_MPos.setEnabled(False)
613617
self.ui.mnu_WPos.setEnabled(False)
614618
self.ui.mnuSet_origine.setEnabled(False)
615619
self.ui.mnuPredefinedLocations.setEnabled(False)
616620
self.ui.mnuJog_to.setEnabled(False)
621+
self.ui.mnuToolChange.setEnabled(False)
617622
self.ui.mnuResetSerial.setEnabled(False)
618623
self.ui.mnu_GrblConfig.setEnabled(False)
619624

@@ -859,11 +864,28 @@ def on_mnuJog_to(self):
859864

860865

861866
def on_dlgJogFinished(self):
862-
print("dlgJog closed")
867+
''' Supression de la boite de dialogue après fermeture '''
863868
self.dlgJog.sig_close.disconnect(self.on_dlgJogFinished)
864869
self.dlgJog = None
865870

866871

872+
def on_mnuToolChange(self):
873+
''' Appel de la boite de dialogue de changement d'outils '''
874+
self.dlgToolChange = dlgToolChange(self.__grblCom, self.__decode, self.__nbAxis, self.__axisNames)
875+
self.dlgToolChange.setParent(self)
876+
self.dlgToolChange.sig_close.connect(self.on_dlgToolChangeFinished)
877+
RC = self.dlgToolChange.showDialog()
878+
if RC == QtWidgets.QDialog.Accepted:
879+
print("Changement d'outil OK")
880+
else:
881+
print("Changement d'outil annulé")
882+
883+
def on_dlgToolChangeFinished(self):
884+
''' Supression de la boite de dialogue après fermeture '''
885+
self.dlgToolChange.sig_close.disconnect(self.on_dlgToolChangeFinished)
886+
self.dlgToolChange = None
887+
888+
867889
@pyqtSlot()
868890
def on_mnuPredefinedLocations(self):
869891
if self.__settings.value("dontConfirmG28", False, type=bool):

cn5X.qrc

+4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
<RCC>
22
<qresource prefix="cn5X">
33
<file>images/ledVerteAlumee.svg</file>
4+
<file>images/btnGo.svg</file>
5+
<file>images/fraise.svg</file>
6+
<file>images/btnGo_down.svg</file>
7+
<file>images/btnGo_light.svg</file>
48
<file>images/ledVerteEteinte.svg</file>
59
<file>images/btnG30.svg</file>
610
<file>images/btnG30_down.svg</file>

cn5X_gcodeFile.py

+23
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
from cn5X_config import *
3131
from msgbox import *
3232
from grblCom import grblCom
33+
from cn5X_toolChange import dlgToolChange
3334

3435

3536
class gcodeFile(QObject):
@@ -266,3 +267,25 @@ def gcodeChanged(self):
266267
def setGcodeChanged(self, value:bool):
267268
self.__gcodeChanged = value
268269

270+
271+
def showToolChange(self):
272+
''' Appel de la boite de dialogue de changement d'outils '''
273+
self.dlgToolChange = dlgToolChange(self.__grblCom, self.__decode, self.__nbAxis, self.__axisNames)
274+
self.dlgToolChange.setParent(self)
275+
self.dlgToolChange.sig_close.connect(self.on_dlgToolChangeFinished)
276+
277+
RC = self.dlgToolChange.showDialog()
278+
if RC == QtWidgets.QDialog.Accepted:
279+
print("Changement d'outil OK")
280+
return True
281+
else:
282+
print("Changement d'outil annulé")
283+
return False
284+
285+
286+
def on_dlgToolChangeFinished(self):
287+
''' Supression de la boite de dialogue après fermeture '''
288+
self.dlgToolChange.sig_close.disconnect(self.on_dlgToolChangeFinished)
289+
self.dlgToolChange = None
290+
291+

cn5X_jog.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
from dlgJog import *
3131

3232
class dlgJog(QObject):
33-
''' Classe assurant la gestion de la boite de dialogue G92 '''
33+
''' Classe assurant la gestion de la boite de dialogue Jogging '''
3434

3535
sig_close = pyqtSignal() # Emis a la fermeture de la boite de dialogue
3636

@@ -147,7 +147,8 @@ def showDialog(self):
147147
# Mise à jour de la vitesse de déplacement:
148148
self.di.dsbJogSpeed.setValue(self.parent().ui.dsbJogSpeed.value())
149149

150-
RC = self.__dlg.open()
150+
###RC = self.__dlg.open()
151+
RC = self.__dlg.exec() # Use exec to make the dialog application modal.
151152
return RC
152153

153154

0 commit comments

Comments
 (0)