This commit is contained in:
JF 2019-05-13 11:49:37 -04:00
parent ca1fd2a4aa
commit 8342f88720
34 changed files with 472 additions and 720 deletions

1
.gitignore vendored
View File

@ -5,3 +5,4 @@ release
/object_script.OutilModbus.Release /object_script.OutilModbus.Release
/%SystemDrive% /%SystemDrive%
/CableTestBench.pro.user /CableTestBench.pro.user
/Rapports

View File

@ -37,7 +37,8 @@ SOURCES += \
Sources/InputConnector.cpp \ Sources/InputConnector.cpp \
Sources/OutputConnector.cpp \ Sources/OutputConnector.cpp \
Sources/CableParametersData.cpp \ Sources/CableParametersData.cpp \
Sources/AutomatedTestReport.cpp Sources/AutomatedTestReport.cpp \
Sources/TestBenchSettings.cpp
HEADERS += \ HEADERS += \
Sources/MainWindow.h \ Sources/MainWindow.h \
@ -62,7 +63,8 @@ HEADERS += \
Sources/OutputConnector.h \ Sources/OutputConnector.h \
Sources/TestBenchVersion.h \ Sources/TestBenchVersion.h \
Sources/CableParametersData.h \ Sources/CableParametersData.h \
Sources/AutomatedTestReport.h Sources/AutomatedTestReport.h \
Sources/TestBenchSettings.h
FORMS += \ FORMS += \
Sources/CMainPage.ui \ Sources/CMainPage.ui \

BIN
Cablotron.csf Normal file

Binary file not shown.

View File

@ -1,6 +1,6 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 10 16:58:40 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Mon May 13 08:38:34 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
# Command: c:\Qt\4.8.1\bin\qmake.exe -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile CableTestBench.pro # Command: c:\Qt\4.8.1\bin\qmake.exe -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile CableTestBench.pro

View File

@ -1,6 +1,6 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 10 16:58:40 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Mon May 13 08:38:34 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
############################################################################# #############################################################################
@ -63,7 +63,7 @@ SOURCES = Sources\MainWindow.cpp \
Sources\OutputConnector.cpp \ Sources\OutputConnector.cpp \
Sources\CableParametersData.cpp \ Sources\CableParametersData.cpp \
Sources\AutomatedTestReport.cpp \ Sources\AutomatedTestReport.cpp \
TestBenchSettings.cpp debug\moc_MainWindow.cpp \ Sources\TestBenchSettings.cpp debug\moc_MainWindow.cpp \
debug\moc_MainPage.cpp \ debug\moc_MainPage.cpp \
debug\moc_CableTestBench.cpp \ debug\moc_CableTestBench.cpp \
debug\moc_VisualInspectionPage.cpp \ debug\moc_VisualInspectionPage.cpp \
@ -494,8 +494,8 @@ debug/AutomatedTestReport.o: Sources/AutomatedTestReport.cpp Sources/AutomatedTe
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\AutomatedTestReport.o Sources\AutomatedTestReport.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\AutomatedTestReport.o Sources\AutomatedTestReport.cpp
debug/TestBenchSettings.o: TestBenchSettings.cpp TestBenchSettings.h debug/TestBenchSettings.o: Sources/TestBenchSettings.cpp Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\TestBenchSettings.o TestBenchSettings.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\TestBenchSettings.o Sources\TestBenchSettings.cpp
debug/moc_MainWindow.o: debug/moc_MainWindow.cpp debug/moc_MainWindow.o: debug/moc_MainWindow.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_MainWindow.o debug\moc_MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_MainWindow.o debug\moc_MainWindow.cpp

View File

@ -1,6 +1,6 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 10 16:58:40 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Mon May 13 08:38:34 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
############################################################################# #############################################################################
@ -63,7 +63,7 @@ SOURCES = Sources\MainWindow.cpp \
Sources\OutputConnector.cpp \ Sources\OutputConnector.cpp \
Sources\CableParametersData.cpp \ Sources\CableParametersData.cpp \
Sources\AutomatedTestReport.cpp \ Sources\AutomatedTestReport.cpp \
TestBenchSettings.cpp release\moc_MainWindow.cpp \ Sources\TestBenchSettings.cpp release\moc_MainWindow.cpp \
release\moc_MainPage.cpp \ release\moc_MainPage.cpp \
release\moc_CableTestBench.cpp \ release\moc_CableTestBench.cpp \
release\moc_VisualInspectionPage.cpp \ release\moc_VisualInspectionPage.cpp \
@ -494,8 +494,8 @@ release/AutomatedTestReport.o: Sources/AutomatedTestReport.cpp Sources/Automated
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\AutomatedTestReport.o Sources\AutomatedTestReport.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\AutomatedTestReport.o Sources\AutomatedTestReport.cpp
release/TestBenchSettings.o: TestBenchSettings.cpp TestBenchSettings.h release/TestBenchSettings.o: Sources/TestBenchSettings.cpp Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\TestBenchSettings.o TestBenchSettings.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\TestBenchSettings.o Sources\TestBenchSettings.cpp
release/moc_MainWindow.o: release/moc_MainWindow.cpp release/moc_MainWindow.o: release/moc_MainWindow.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_MainWindow.o release\moc_MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_MainWindow.o release\moc_MainWindow.cpp

View File

@ -1,52 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 6 contacts
Connecteur de sortie: Connecteur circulaire 6 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
Signature de l'opérateur de test: _________________________________________
-----------------------------------------
Log du test:
16:44:31.062 - Démarrage du test automatique.
16:44:31.523 - Succès de l'auto test des modules d'I/O
16:44:32.015 - Succès du test du contact 1
16:44:32.420 - Succès du test du contact 2
16:44:32.832 - Succès du test du contact 3
16:44:33.270 - Succès du test du contact 4
16:44:33.708 - Succès du test du contact 5
16:44:34.144 - Succès du test du contact 6
16:44:34.304 - Test automatique terminé

View File

@ -1,68 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 14 contacts
Connecteur de sortie: Connecteur circulaire 14 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
7 Succès Succès Succès N/A
8 Succès Succès Succès N/A
9 Succès Succès Succès N/A
10 Succès Succès Succès N/A
11 Succès Succès Succès N/A
12 Succès Succès Succès N/A
13 N/A N/A Échec[14] N/A
14 N/A N/A Échec[13] N/A
Signature de l'opérateur de test: _________________________________________
-----------------------------------------
Log du test:
16:44:44.052 - Démarrage du test automatique.
16:44:44.520 - Succès de l'auto test des modules d'I/O
16:44:44.996 - Succès du test du contact 1
16:44:45.399 - Succès du test du contact 2
16:44:45.827 - Succès du test du contact 3
16:44:46.213 - Succès du test du contact 4
16:44:46.616 - Succès du test du contact 5
16:44:47.029 - Succès du test du contact 6
16:44:47.470 - Succès du test du contact 7
16:44:47.902 - Succès du test du contact 8
16:44:48.339 - Succès du test du contact 9
16:44:48.778 - Succès du test du contact 10
16:44:49.255 - Succès du test du contact 11
16:44:49.658 - Succès du test du contact 12
16:44:50.088 - Échec du test d'assignation du contact 13: le contact 14 est activé.
16:44:50.522 - Échec du test d'assignation du contact 14: le contact 13 est activé.
16:44:50.616 - Test automatique terminé

View File

@ -1,57 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 6 contacts
Connecteur de sortie: Connecteur circulaire 6 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: SuccèsLorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:04:55.541 - Démarrage du test automatique.
17:04:55.950 - Succès de l'auto test des modules d'I/O
17:04:56.359 - Succès du test du contact 1
17:04:56.769 - Succès du test du contact 2
17:04:57.206 - Succès du test du contact 3
17:04:57.644 - Succès du test du contact 4
17:04:58.080 - Succès du test du contact 5
17:04:58.519 - Succès du test du contact 6
17:04:58.734 - Test automatique terminé

View File

@ -1,54 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 6 contacts
Connecteur de sortie: Connecteur circulaire 6 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: SuccèsLorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:05:18.908 - Démarrage du test automatique.
17:05:19.323 - Succès de l'auto test des modules d'I/O
17:05:19.726 - Succès du test du contact 1
17:05:20.143 - Succès du test du contact 2
17:05:20.575 - Succès du test du contact 3
17:05:21.012 - Succès du test du contact 4
17:05:21.451 - Succès du test du contact 5
17:05:21.888 - Succès du test du contact 6
17:05:22.107 - Test automatique terminé

View File

@ -1,56 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 6 contacts
Connecteur de sortie: Connecteur circulaire 6 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: SuccèsLorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:05:57.825 - Entrée en mode test manuel
17:06:00.666 - Fin du test manuel
17:06:01.172 - Démarrage du test automatique.
17:06:01.634 - Succès de l'auto test des modules d'I/O
17:06:02.111 - Succès du test du contact 1
17:06:02.517 - Succès du test du contact 2
17:06:02.945 - Succès du test du contact 3
17:06:03.384 - Succès du test du contact 4
17:06:03.819 - Succès du test du contact 5
17:06:04.254 - Succès du test du contact 6
17:06:04.419 - Test automatique terminé

View File

@ -1,55 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 6 contacts
Connecteur de sortie: Connecteur circulaire 6 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: N/A
Section 5.3 exécutée: N/A
Section 5.4 exécutée: N/A
Section 5.5 exécutée: N/A
Section 5.6 exécutée: N/A
Notes d'inspection:
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: Succès
Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:06:43.002 - Démarrage du test automatique.
17:06:43.438 - Succès de l'auto test des modules d'I/O
17:06:43.853 - Succès du test du contact 1
17:06:44.285 - Succès du test du contact 2
17:06:44.725 - Succès du test du contact 3
17:06:45.159 - Succès du test du contact 4
17:06:45.598 - Succès du test du contact 5
17:06:46.077 - Succès du test du contact 6
17:06:46.085 - Test automatique terminé

View File

@ -1,71 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 14 contacts
Connecteur de sortie: Connecteur circulaire 14 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: Oui
Section 5.3 exécutée: Oui
Section 5.4 exécutée: Oui
Section 5.5 exécutée: Oui
Section 5.6 exécutée: Oui
Notes d'inspection:
jasdij
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: Succès
Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
7 Succès Succès Succès N/A
8 Succès Succès Succès N/A
9 Succès Succès Succès N/A
10 Succès Succès Succès N/A
11 Succès Succès Succès N/A
12 Succès Succès Succès N/A
13 N/A N/A Échec[14] N/A
14 N/A N/A Échec[13] N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:10:21.159 - Démarrage du test automatique.
17:10:21.588 - Succès de l'auto test des modules d'I/O
17:10:22.005 - Succès du test du contact 1
17:10:22.436 - Succès du test du contact 2
17:10:22.873 - Succès du test du contact 3
17:10:23.311 - Succès du test du contact 4
17:10:23.747 - Succès du test du contact 5
17:10:24.231 - Succès du test du contact 6
17:10:24.630 - Succès du test du contact 7
17:10:25.060 - Succès du test du contact 8
17:10:25.494 - Succès du test du contact 9
17:10:25.933 - Succès du test du contact 10
17:10:26.368 - Succès du test du contact 11
17:10:26.861 - Succès du test du contact 12
17:10:27.276 - Échec du test d'assignation du contact 13: le contact 14 est activé.
17:10:27.679 - Échec du test d'assignation du contact 14: le contact 13 est activé.
17:10:27.732 - Test automatique terminé

View File

@ -1,72 +0,0 @@
Rapport de test - Câble SEI
Date de l'essai: 2019-05-10
Version du logiciel de test: V0.10_ING_DEV
-----------------------------------------
Paramètres du câble:
Identification du câble: CABLE_XX_NO_AA_BB.c
Station: 1S52 - Frontenac
Type: Permanent
Opérateur du test: JFMartel
Connecteur d'entrée: Connecteur circulaire 14 contacts
Connecteur de sortie: Connecteur circulaire 14 contacts
-----------------------------------------
Résultats de l'inspection visuelle:
Section 5.2 exécutée: Oui
Section 5.3 exécutée: Oui
Section 5.4 exécutée: Oui
Section 5.5 exécutée: Oui
Section 5.6 exécutée: Oui
Notes d'inspection:
jasdij
-----------------------------------------
Résultats du test automatique du câble:
Pré-test des modules d'I/O: Succès
Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.
No. Contact Continuité Isolation Assignation 2è test
1 Succès Succès Succès N/A
2 Succès Succès Succès N/A
3 Succès Succès Succès N/A
4 Succès Succès Succès N/A
5 Succès Succès Succès N/A
6 Succès Succès Succès N/A
7 Succès Succès Succès N/A
8 Succès Succès Succès N/A
9 Succès Succès Succès N/A
10 Succès Succès Succès N/A
11 Succès Succès Succès N/A
12 Succès Succès Succès N/A
13 N/A N/A Échec[14] N/A
14 N/A N/A Échec[13] N/A
Signature de l'opérateur de test: _________________________________________
Date: _________________________________________
-----------------------------------------
Log du test:
17:10:21.159 - Démarrage du test automatique.
17:10:21.588 - Succès de l'auto test des modules d'I/O
17:10:22.005 - Succès du test du contact 1
17:10:22.436 - Succès du test du contact 2
17:10:22.873 - Succès du test du contact 3
17:10:23.311 - Succès du test du contact 4
17:10:23.747 - Succès du test du contact 5
17:10:24.231 - Succès du test du contact 6
17:10:24.630 - Succès du test du contact 7
17:10:25.060 - Succès du test du contact 8
17:10:25.494 - Succès du test du contact 9
17:10:25.933 - Succès du test du contact 10
17:10:26.368 - Succès du test du contact 11
17:10:26.861 - Succès du test du contact 12
17:10:27.276 - Échec du test d'assignation du contact 13: le contact 14 est activé.
17:10:27.679 - Échec du test d'assignation du contact 14: le contact 13 est activé.
17:10:27.732 - Test automatique terminé
17:11:00.415 - Entrée en mode test manuel

View File

@ -3,13 +3,15 @@
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
#include <QFileInfo> #include <QFileInfo>
#include <QProcess> #include <QProcess>
#include "TestBenchVersion.h"
#include <QMessageBox>
CCableTestBench::CCableTestBench(QObject *parent) : CCableTestBench::CCableTestBench(QObject *parent) :
QObject(parent), QObject(parent),
mActualCable(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE,&mIOInterface) mActualCable(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE,&mIOInterface)
{ {
w = new MainWindow(0,this); w = new MainWindow(0,this);
w->setWindowTitle("Cablotron"); w->setWindowTitle(QString("Cablotron %1").arg(TEST_BENCH_VERSION));
} }
CCableTestBench::~CCableTestBench() CCableTestBench::~CCableTestBench()
@ -26,15 +28,30 @@ int CCableTestBench::Start()
mMainPageHandle = w->mMainPage; mMainPageHandle = w->mMainPage;
mVisualInspPageHandle = w->mVisualInspPage; mVisualInspPageHandle = w->mVisualInspPage;
mCableTestPageHandle = w->mCableTestPage; mCableTestPageHandle = w->mCableTestPage;
mOptionsPageHandle = w->mOptionsPage;
if(mTestBenchOptions.LoadSettingFromFile() == RET_OK)
{
mOptionsPageHandle->SetCurrentOptions(&mTestBenchOptions);
}
{
mOptionsPageHandle->GetCurrentOptions(&mTestBenchOptions);
}
mCableTestEngine.InitCableTestEngine(this); mCableTestEngine.InitCableTestEngine(this,mTestBenchOptions.mPinHoldTime);
mIOInterface.OpenIOModules(); if(mIOInterface.OpenIOModules(mTestBenchOptions.mIOModuleIPAddress) == RET_ERROR)
{
mCableTestReport.AddLogEntry("Impossible de communiquer avec le module d'I/O.\nVérifier la connexion ou l'adresse IP.");
QMessageBox::critical(0,"Erreur de connexion","Impossible de communiquer avec le module d'I/O.\nVérifier la connexion ou l'adresse IP.");
}
mCableTestPageHandle->mGuiRefreshTimer.start(); mCableTestPageHandle->mGuiRefreshTimer.start();
connect(&mCableTestReport,SIGNAL(NewTestLogEntry(QString)),mCableTestPageHandle,SLOT(AddTestLogEntry(QString))); connect(&mCableTestReport,SIGNAL(NewTestLogEntry(QString)),mCableTestPageHandle,SLOT(AddTestLogEntry(QString)));
return 1; return 1;
} }
@ -173,22 +190,44 @@ int CCableTestBench::NewCableRequest()
mCableTestPageHandle->ResetCable(); mCableTestPageHandle->ResetCable();
mCableTestPageHandle->DisableStartTestBtn(); mCableTestPageHandle->DisableStartTestBtn();
mCableTestReport.CreateNewTestReport(); mCableTestReport.CreateNewTestReport();
return RET_OK; return RET_OK;
} }
int CCableTestBench::CheckIfReadyForTesting() int CCableTestBench::CheckIfReadyForTesting()
{ {
bool VisualInspectionDone = false, ConnectorSelected = false, CableConfigured = true; bool VisualInspectionDone = false, ConnectorSelected = false, CableConfigured = false;
mVisualInspPageHandle->FillVisualInspectionResultReport(mCableTestReport.GetInspectionResult()); mVisualInspPageHandle->FillVisualInspectionResultReport(mCableTestReport.GetInspectionResult());
if(mCableTestReport.GetInspectionResult()->IsVisualInspectionResultComplete() == true) if(mCableTestReport.GetInspectionResult()->IsVisualInspectionResultComplete() == true)
{ {
VisualInspectionDone = true; VisualInspectionDone = true;
} }
//todo, use the options flag to bypass visual inspection if(mTestBenchOptions.mIgnoreVisualInspection)
VisualInspectionDone = true; {
VisualInspectionDone = true;
}
if(mCableTestPageHandle->IsCableConfigured())
{
CableConfigured = true;
mCableTestPageHandle->SetCableConfigureStep(true);
}
else
{
mCableTestPageHandle->SetCableConfigureStep(false);
}
ConnectorSelected = mActualCable.IsCableDefined(); ConnectorSelected = mActualCable.IsCableDefined();
if(ConnectorSelected)
{
mCableTestPageHandle->SetConnectorSelStep();
}
else
{
mCableTestPageHandle->SetConnectorSelStep(false);
}
if(VisualInspectionDone && ConnectorSelected && CableConfigured) if(VisualInspectionDone && ConnectorSelected && CableConfigured)
{ {
@ -264,7 +303,7 @@ int CCableTestBench::RefreshConnectorsStateRequest()
int CCableTestBench::SaveReportRequest() int CCableTestBench::SaveReportRequest()
{ {
return mCableTestReport.SaveReportToFile(); return mCableTestReport.SaveReportToFile(&mTestBenchOptions);
} }
int CCableTestBench::OpenReportRequest() int CCableTestBench::OpenReportRequest()
@ -282,7 +321,24 @@ int CCableTestBench::OpenReportRequest()
QProcess *process = new QProcess; QProcess *process = new QProcess;
process->start(Command); process->start(Command);
//QProcess::execute(Command);
return RET_OK;
}
int CCableTestBench::CableConfigChanged()
{
CheckIfReadyForTesting();
return RET_OK;
}
int CCableTestBench::TestBenchOptionsChanged()
{
mOptionsPageHandle->GetCurrentOptions(&mTestBenchOptions);
mTestBenchOptions.SaveSettingsToFile();
mCableTestEngine.SetPinHoldTime(mTestBenchOptions.mPinHoldTime);
return RET_OK; return RET_OK;
} }

View File

@ -9,11 +9,14 @@
#include "TestReport.h" #include "TestReport.h"
#include "IOModulesInterface.h" #include "IOModulesInterface.h"
#include "CableTestEngine.h" #include "CableTestEngine.h"
#include "TestBenchSettings.h"
class CMainPage; class CMainPage;
class CVisualInspectionPage; class CVisualInspectionPage;
class CCableTestPage; class CCableTestPage;
class COptionsPage;
class CCableTestBench : public QObject class CCableTestBench : public QObject
@ -29,9 +32,12 @@ public:
CMainPage *mMainPageHandle; CMainPage *mMainPageHandle;
CVisualInspectionPage *mVisualInspPageHandle; CVisualInspectionPage *mVisualInspPageHandle;
CCableTestPage *mCableTestPageHandle; CCableTestPage *mCableTestPageHandle;
COptionsPage *mOptionsPageHandle;
CCable mActualCable; CCable mActualCable;
CCableTestEngine mCableTestEngine; CCableTestEngine mCableTestEngine;
CTestBenchSettings mTestBenchOptions;
CIOModulesInterface mIOInterface; CIOModulesInterface mIOInterface;
@ -45,8 +51,11 @@ public:
int RefreshConnectorsStateRequest(); int RefreshConnectorsStateRequest();
int SaveReportRequest(); int SaveReportRequest();
int OpenReportRequest(); int OpenReportRequest();
int CableConfigChanged();
int TestBenchOptionsChanged();
CCable *SetSelectedConnector(CConnectorDefs::eConnectorType ConType); CCable *SetSelectedConnector(CConnectorDefs::eConnectorType ConType);

View File

@ -12,7 +12,7 @@ CCableTestEngine::~CCableTestEngine()
delete mCableTestSMTimer; delete mCableTestSMTimer;
} }
int CCableTestEngine::InitCableTestEngine(CCableTestBench *ProgramHandle) int CCableTestEngine::InitCableTestEngine(CCableTestBench *ProgramHandle, int PinHoldTime)
{ {
mProgramHandle = ProgramHandle; mProgramHandle = ProgramHandle;
mTestCable = ProgramHandle->GetActualCable(); mTestCable = ProgramHandle->GetActualCable();
@ -29,14 +29,20 @@ int CCableTestEngine::InitCableTestEngine(CCableTestBench *ProgramHandle)
mCableTestSMTimer->stop(); mCableTestSMTimer->stop();
connect(mCableTestSMTimer,SIGNAL(timeout()),this,SLOT(SMTimerExpired())); connect(mCableTestSMTimer,SIGNAL(timeout()),this,SLOT(SMTimerExpired()));
//TODO: Get this from the options page...
mPinHoldTime = 300; //ms mPinHoldTime = PinHoldTime; //ms
CableTestEngineStateMachine(CABLE_TEST_TICK_SM_EVENT); CableTestEngineStateMachine(CABLE_TEST_TICK_SM_EVENT);
return RET_OK; return RET_OK;
} }
int CCableTestEngine::SetPinHoldTime(int HoldTime)
{
mPinHoldTime = HoldTime;
return RET_OK;
}
void CCableTestEngine::CableTestEngineStateMachine(int Event) void CCableTestEngine::CableTestEngineStateMachine(int Event)
{ {
switch(mCableTestSMState) switch(mCableTestSMState)

View File

@ -27,7 +27,7 @@ public:
CCableTestEngine(); CCableTestEngine();
~CCableTestEngine(); ~CCableTestEngine();
int InitCableTestEngine(CCableTestBench *ProgramHandle); int InitCableTestEngine(CCableTestBench *ProgramHandle, int PinHoldTime);
int StartAutomatedTest(); int StartAutomatedTest();
int PauseAutomatedTest(); int PauseAutomatedTest();
@ -37,6 +37,8 @@ public:
int StopManualTest(); int StopManualTest();
int ManualPinToggle(int ConnectorPinNbr); int ManualPinToggle(int ConnectorPinNbr);
int SetPinHoldTime(int HoldTime);
bool IsAutomaticTestRunning(); bool IsAutomaticTestRunning();
eCableTestEngineMode GetTestEngineCurrentMode(); eCableTestEngineMode GetTestEngineCurrentMode();

View File

@ -32,7 +32,6 @@ CCableTestPage::CCableTestPage(QWidget *parent) :
connect(ui->mConnectorSelectWidget,SIGNAL(ConnectorSelected(CConnectorDefs::eConnectorType)),this,SLOT(ConnectorSelectionChanged(CConnectorDefs::eConnectorType))); connect(ui->mConnectorSelectWidget,SIGNAL(ConnectorSelected(CConnectorDefs::eConnectorType)),this,SLOT(ConnectorSelectionChanged(CConnectorDefs::eConnectorType)));
ui->mInputTestVisualisationWidget->SetConnectorPinCount(0); ui->mInputTestVisualisationWidget->SetConnectorPinCount(0);
ui->mOutputTestVisualisationWidget->SetConnectorPinCount(0); ui->mOutputTestVisualisationWidget->SetConnectorPinCount(0);
ui->mVisualInspStepChkBx->setCheckable(false);
mGuiRefreshTimer.setSingleShot(false); mGuiRefreshTimer.setSingleShot(false);
@ -47,6 +46,8 @@ CCableTestPage::CCableTestPage(QWidget *parent) :
connect(&mGuiRefreshTimer,SIGNAL(timeout()),this,SLOT(GuiRefreshTimerExpired())); connect(&mGuiRefreshTimer,SIGNAL(timeout()),this,SLOT(GuiRefreshTimerExpired()));
connect(ui->mSaveReportBtn,SIGNAL(clicked()),this,SLOT(SaveReportBtnClicked())); connect(ui->mSaveReportBtn,SIGNAL(clicked()),this,SLOT(SaveReportBtnClicked()));
connect(ui->mOpenReportBtn,SIGNAL(clicked()),this,SLOT(OpenReportBtnClicked())); connect(ui->mOpenReportBtn,SIGNAL(clicked()),this,SLOT(OpenReportBtnClicked()));
connect(ui->mIdentCableEditBox,SIGNAL(textEdited(QString)),this,SLOT(CableConfigTextChanged()));
connect(ui->mNomTesteurEditBox,SIGNAL(textEdited(QString)),this,SLOT(CableConfigTextChanged()));
@ -56,7 +57,17 @@ CCableTestPage::CCableTestPage(QWidget *parent) :
ui->mStartTestBtn->setEnabled(false); ui->mStartTestBtn->setEnabled(false);
ui->mStartManualTestBtn->setEnabled(false); ui->mStartManualTestBtn->setEnabled(false);
ui->mOutputTestVisualisationWidget->DisablePinClicks(); ui->mOutputTestVisualisationWidget->DisablePinClicks();
// ui->mOpenReportBtn->setEnabled(false);
QPalette pal;
pal.setColor(QPalette::WindowText,Qt::red);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: À FAIRE");
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: À REMPLIR");
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: À SÉLECTIONNER");
@ -80,19 +91,66 @@ int CCableTestPage::SetVisualInspectionDone(bool Done)
{ {
ui->mInspectionDoneIcon->setPixmap(mInspectionDonePixmap); ui->mInspectionDoneIcon->setPixmap(mInspectionDonePixmap);
ui->mExecInspVisuelleBtn->setText(QString("Réviser Inspection").toUtf8()); ui->mExecInspVisuelleBtn->setText(QString("Réviser Inspection").toUtf8());
ui->mVisualInspStepChkBx->setCheckable(true);
ui->mVisualInspStepChkBx->setChecked(true); QPalette pal;
ui->mVisualInspStepChkBx->setCheckable(false); pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: OK");
} }
else else
{ {
ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap); ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap);
ui->mExecInspVisuelleBtn->setText("Effectuer Inspection"); ui->mExecInspVisuelleBtn->setText("Effectuer Inspection");
ui->mVisualInspStepChkBx->setChecked(false);
QPalette pal;
pal.setColor(QPalette::WindowText,Qt::red);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: À FAIRE");
} }
return RET_OK; return RET_OK;
} }
int CCableTestPage::SetConnectorSelStep(bool done)
{
QPalette pal;
if(done)
{
pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: OK");
}
else
{
pal.setColor(QPalette::WindowText,Qt::red);
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: À SÉLECTIONNER");
}
return RET_OK;
}
int CCableTestPage::SetCableConfigureStep(bool done)
{
QPalette pal;
if(done)
{
pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: OK");
}
else
{
pal.setColor(QPalette::WindowText,Qt::red);
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: À REMPLIR");
}
return RET_OK;
}
void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType) void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType)
{ {
CCable* Cable; CCable* Cable;
@ -103,6 +161,8 @@ void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType Co
ui->mInputTestVisualisationWidget->SetConnectorPinCount(Cable->GetInputConnector()->GetPinCount()); ui->mInputTestVisualisationWidget->SetConnectorPinCount(Cable->GetInputConnector()->GetPinCount());
ui->mOutputTestVisualisationWidget->SetConnectorPinCount(Cable->GetOutputConnector()->GetPinCount()); ui->mOutputTestVisualisationWidget->SetConnectorPinCount(Cable->GetOutputConnector()->GetPinCount());
} }
} }
void CCableTestPage::StartTestBtnClicked() void CCableTestPage::StartTestBtnClicked()
@ -132,12 +192,15 @@ int CCableTestPage::ResetCable()
ui->mOutputTestVisualisationWidget->ClearConnectorsLists(); ui->mOutputTestVisualisationWidget->ClearConnectorsLists();
//Reset cable config zone //Reset cable config zone
ui->mIdentCableEditBox->setText(mDefaultCableName); // ui->mIdentCableEditBox->setText(mDefaultCableName);
ui->mNomTesteurEditBox->setText(mDefaultInspectorName); // ui->mNomTesteurEditBox->setText(mDefaultInspectorName);
//Reset Inspection Visuelle result (main program will clear the form) //Reset Inspection Visuelle result (main program will clear the form)
SetVisualInspectionDone(false); SetVisualInspectionDone(false);
// SetCableConfigureStep(false);
SetConnectorSelStep(false);
//Clear connector selection zone //Clear connector selection zone
ui->mConnectorSelectWidget->ClearAllConnectorsSelections(); ui->mConnectorSelectWidget->ClearAllConnectorsSelections();
@ -304,3 +367,23 @@ int CCableTestPage::SetAutoTestResult(QString Result, QColor color)
return RET_OK; return RET_OK;
} }
bool CCableTestPage::IsCableConfigured()
{
if(ui->mIdentCableEditBox->text().isEmpty())
{
return false;
}
if(ui->mNomTesteurEditBox->text().isEmpty())
{
return false;
}
return true;
}
void CCableTestPage::CableConfigTextChanged()
{
mProgramHandle->CableConfigChanged();
}

View File

@ -29,6 +29,8 @@ public:
void hideEvent(QHideEvent *event); void hideEvent(QHideEvent *event);
int SetVisualInspectionDone(bool Done = true); int SetVisualInspectionDone(bool Done = true);
int SetCableConfigureStep(bool done = true);
int SetConnectorSelStep(bool done = true);
int ResetCable(); int ResetCable();
int EnableStartTestBtn(); int EnableStartTestBtn();
int DisableStartTestBtn(); int DisableStartTestBtn();
@ -45,6 +47,10 @@ public:
int FillReportCableParametersData(CCableParametersData* ReportPtr); int FillReportCableParametersData(CCableParametersData* ReportPtr);
bool IsCableConfigured();
private: private:
@ -72,6 +78,7 @@ public slots:
void AddTestLogEntry(QString Entry); void AddTestLogEntry(QString Entry);
void SaveReportBtnClicked(); void SaveReportBtnClicked();
void OpenReportBtnClicked(); void OpenReportBtnClicked();
void CableConfigTextChanged();
}; };
#endif // CABLETESTPAGE_H #endif // CABLETESTPAGE_H

View File

@ -316,7 +316,7 @@
<rect> <rect>
<x>50</x> <x>50</x>
<y>220</y> <y>220</y>
<width>491</width> <width>621</width>
<height>131</height> <height>131</height>
</rect> </rect>
</property> </property>
@ -326,61 +326,10 @@
<property name="frameShadow"> <property name="frameShadow">
<enum>QFrame::Raised</enum> <enum>QFrame::Raised</enum>
</property> </property>
<widget class="QCheckBox" name="mCableIdentStepChkBx">
<property name="geometry">
<rect>
<x>20</x>
<y>20</y>
<width>151</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>1. Identification du câble</string>
</property>
<property name="checkable">
<bool>false</bool>
</property>
</widget>
<widget class="QCheckBox" name="mVisualInspStepChkBx">
<property name="geometry">
<rect>
<x>20</x>
<y>50</y>
<width>151</width>
<height>17</height>
</rect>
</property>
<property name="toolTip">
<string extracomment="Test"/>
</property>
<property name="text">
<string>2. Inspection visuelle</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
</widget>
<widget class="QCheckBox" name="mConSelStepChkBx">
<property name="geometry">
<rect>
<x>20</x>
<y>80</y>
<width>191</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>3. Sélection du connecteur d'entrée</string>
</property>
<property name="checkable">
<bool>false</bool>
</property>
</widget>
<widget class="QGroupBox" name="groupBox"> <widget class="QGroupBox" name="groupBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>230</x> <x>310</x>
<y>10</y> <y>10</y>
<width>121</width> <width>121</width>
<height>91</height> <height>91</height>
@ -419,7 +368,7 @@
<widget class="QGroupBox" name="groupBox_2"> <widget class="QGroupBox" name="groupBox_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>370</x> <x>480</x>
<y>10</y> <y>10</y>
<width>111</width> <width>111</width>
<height>80</height> <height>80</height>
@ -445,7 +394,7 @@
<widget class="QPushButton" name="mSaveReportBtn"> <widget class="QPushButton" name="mSaveReportBtn">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>360</x> <x>480</x>
<y>100</y> <y>100</y>
<width>121</width> <width>121</width>
<height>23</height> <height>23</height>
@ -455,6 +404,45 @@
<string>Sauvegarder Rapport</string> <string>Sauvegarder Rapport</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="mCableIdentStepLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>20</y>
<width>201</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>1. Identification du câble: À REMPLIR</string>
</property>
</widget>
<widget class="QLabel" name="mVisualInspectionStepLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>50</y>
<width>201</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>2. Inspection visuelle: À EXÉCUTER</string>
</property>
</widget>
<widget class="QLabel" name="mConnectorSelStepLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>80</y>
<width>271</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>3. Sélection du connecteur d'entrée: À SÉLECTIONNER</string>
</property>
</widget>
</widget> </widget>
<widget class="QLabel" name="mInspVisuelleLabel_2"> <widget class="QLabel" name="mInspVisuelleLabel_2">
<property name="geometry"> <property name="geometry">
@ -493,7 +481,7 @@
<widget class="QGroupBox" name="groupBox_3"> <widget class="QGroupBox" name="groupBox_3">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>600</x> <x>720</x>
<y>220</y> <y>220</y>
<width>231</width> <width>231</width>
<height>131</height> <height>131</height>

View File

@ -22,10 +22,10 @@ CIOModulesInterface::~CIOModulesInterface()
} }
int CIOModulesInterface::OpenIOModules() int CIOModulesInterface::OpenIOModules(QString IPAddress)
{ {
int ret = SM_Open(&hndl,(char*)"192.168.0.52"); int ret = SM_Open(&hndl,IPAddress.toAscii().data());
if(ret < 0) if(ret < 0)
{ {
qDebug("Impossible d'ouvrir le module d'I/O, erreur %d",ret); qDebug("Impossible d'ouvrir le module d'I/O, erreur %d",ret);

View File

@ -30,7 +30,7 @@ public:
CIOModulesInterface(); CIOModulesInterface();
~CIOModulesInterface(); ~CIOModulesInterface();
int OpenIOModules(); int OpenIOModules(QString IPAddress);
int CloseIOModules(); int CloseIOModules();
int SetOutputs(QBitArray Outputs); int SetOutputs(QBitArray Outputs);

View File

@ -1,5 +1,8 @@
#include "OptionsPage.h" #include "OptionsPage.h"
#include "ui_OptionsPage.h" #include "ui_OptionsPage.h"
#include "GlobalDefine.h"
#include "CableTestBench.h"
#include <QHostAddress>
COptionsPage::COptionsPage(QWidget *parent) : COptionsPage::COptionsPage(QWidget *parent) :
QWidget(parent), QWidget(parent),
@ -8,9 +11,49 @@ COptionsPage::COptionsPage(QWidget *parent) :
ui->setupUi(this); ui->setupUi(this);
mProgramHandle = 0; mProgramHandle = 0;
connect(ui->mApplyAndSaveBtn,SIGNAL(clicked()),this,SLOT(OptionChanged()));
} }
COptionsPage::~COptionsPage() COptionsPage::~COptionsPage()
{ {
delete ui; delete ui;
} }
int COptionsPage::GetCurrentOptions(CTestBenchSettings *Settings)
{
Settings->mPinHoldTime = ui->mTestHoldTimeHighSpinBx->value();
Settings->mIgnoreVisualInspection = ui->mIgnoreVisualInspChkBx->isChecked();
Settings->mIOModuleIPAddress = QString("%1.%2.%3.%4").arg(ui->mIPAdd1SpinBox->value()).arg(ui->mIPAdd2SpinBox->value()).arg(ui->mIPAdd3SpinBox->value()).arg(ui->mIPAdd4SpinBox->value());
Settings->mIncludeLogInReport = ui->mIncludeLogInReportChkBx->isChecked();
return RET_OK;
}
int COptionsPage::SetCurrentOptions(CTestBenchSettings *Settings)
{
ui->mTestHoldTimeHighSpinBx->setValue(Settings->mPinHoldTime);
ui->mIgnoreVisualInspChkBx->setChecked(Settings->mIgnoreVisualInspection);
ui->mIncludeLogInReportChkBx->setChecked(Settings->mIncludeLogInReport);
QHostAddress IPAddres(Settings->mIOModuleIPAddress);
int IPV4 = IPAddres.toIPv4Address();
ui->mIPAdd4SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd3SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd2SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd1SpinBox->setValue(IPV4 & 0x000000FF);
}
void COptionsPage::OptionChanged()
{
mProgramHandle->TestBenchOptionsChanged();
}

View File

@ -2,6 +2,8 @@
#define OPTIONSPAGE_H #define OPTIONSPAGE_H
#include <QWidget> #include <QWidget>
#include "TestBenchSettings.h"
namespace Ui { namespace Ui {
class COptionsPage; class COptionsPage;
@ -19,8 +21,20 @@ public:
CCableTestBench *mProgramHandle; CCableTestBench *mProgramHandle;
int GetCurrentOptions(CTestBenchSettings *Settings);
int SetCurrentOptions(CTestBenchSettings *Settings);
private: private:
Ui::COptionsPage *ui; Ui::COptionsPage *ui;
public slots:
void OptionChanged();
signals:
void CurrentOptionsChanged();
}; };
#endif // OPTIONSPAGE_H #endif // OPTIONSPAGE_H

View File

@ -6,35 +6,17 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1119</width> <width>564</width>
<height>647</height> <height>647</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Form</string> <string>Form</string>
</property> </property>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>100</x>
<y>40</y>
<width>181</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string>Valeurs par défaut</string>
</property>
</widget>
<widget class="QLabel" name="label_2"> <widget class="QLabel" name="label_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>530</x> <x>170</x>
<y>40</y> <y>40</y>
<width>181</width> <width>181</width>
<height>31</height> <height>31</height>
@ -52,7 +34,7 @@
<widget class="QSpinBox" name="mTestHoldTimeHighSpinBx"> <widget class="QSpinBox" name="mTestHoldTimeHighSpinBx">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>680</x> <x>320</x>
<y>110</y> <y>110</y>
<width>61</width> <width>61</width>
<height>22</height> <height>22</height>
@ -71,7 +53,7 @@
<widget class="QLabel" name="label_3"> <widget class="QLabel" name="label_3">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>500</x> <x>140</x>
<y>110</y> <y>110</y>
<width>171</width> <width>171</width>
<height>20</height> <height>20</height>
@ -86,48 +68,11 @@
<string>Temps de maintien haut (ms)</string> <string>Temps de maintien haut (ms)</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_4">
<property name="geometry">
<rect>
<x>500</x>
<y>150</y>
<width>171</width>
<height>20</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Temps de maintien bas (ms)</string>
</property>
</widget>
<widget class="QSpinBox" name="mTestHoldTimeLowSpinBx">
<property name="geometry">
<rect>
<x>680</x>
<y>150</y>
<width>61</width>
<height>22</height>
</rect>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>5000</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
<widget class="QSpinBox" name="mIPAdd1SpinBox"> <widget class="QSpinBox" name="mIPAdd1SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>510</x> <x>140</x>
<y>340</y> <y>311</y>
<width>42</width> <width>42</width>
<height>22</height> <height>22</height>
</rect> </rect>
@ -142,8 +87,8 @@
<widget class="QSpinBox" name="mIPAdd2SpinBox"> <widget class="QSpinBox" name="mIPAdd2SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>560</x> <x>190</x>
<y>340</y> <y>311</y>
<width>42</width> <width>42</width>
<height>22</height> <height>22</height>
</rect> </rect>
@ -158,8 +103,8 @@
<widget class="QSpinBox" name="mIPAdd3SpinBox"> <widget class="QSpinBox" name="mIPAdd3SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>610</x> <x>240</x>
<y>340</y> <y>311</y>
<width>42</width> <width>42</width>
<height>22</height> <height>22</height>
</rect> </rect>
@ -171,8 +116,8 @@
<widget class="QSpinBox" name="mIPAdd4SpinBox"> <widget class="QSpinBox" name="mIPAdd4SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>660</x> <x>290</x>
<y>340</y> <y>311</y>
<width>42</width> <width>42</width>
<height>22</height> <height>22</height>
</rect> </rect>
@ -187,10 +132,10 @@
<widget class="QLabel" name="label_5"> <widget class="QLabel" name="label_5">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>510</x> <x>140</x>
<y>310</y> <y>270</y>
<width>171</width> <width>351</width>
<height>20</height> <height>31</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
@ -199,14 +144,15 @@
</font> </font>
</property> </property>
<property name="text"> <property name="text">
<string>Adresse IP module I/O</string> <string>Adresse IP module I/O
(redémarrage de l'application requis)</string>
</property> </property>
</widget> </widget>
<widget class="QPushButton" name="mApplyAndSaveBtn"> <widget class="QPushButton" name="mApplyAndSaveBtn">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>390</x> <x>170</x>
<y>550</y> <y>470</y>
<width>131</width> <width>131</width>
<height>23</height> <height>23</height>
</rect> </rect>
@ -218,8 +164,8 @@
<widget class="QCheckBox" name="mIgnoreVisualInspChkBx"> <widget class="QCheckBox" name="mIgnoreVisualInspChkBx">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>500</x> <x>140</x>
<y>200</y> <y>160</y>
<width>221</width> <width>221</width>
<height>17</height> <height>17</height>
</rect> </rect>
@ -228,6 +174,19 @@
<string>Ignorer l'inspection visuelle</string> <string>Ignorer l'inspection visuelle</string>
</property> </property>
</widget> </widget>
<widget class="QCheckBox" name="mIncludeLogInReportChkBx">
<property name="geometry">
<rect>
<x>140</x>
<y>200</y>
<width>221</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Inclure LOG dans le rapport</string>
</property>
</widget>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections/>

View File

@ -1,5 +1,68 @@
#include "TestBenchSettings.h" #include "TestBenchSettings.h"
#include <QFile>
#include <QDataStream>
#include "GlobalDefine.h"
CTestBenchSettings::CTestBenchSettings() CTestBenchSettings::CTestBenchSettings()
{ {
} }
int CTestBenchSettings::SaveSettingsToFile()
{
QFile *SettingFile = new QFile("./Cablotron.csf");
if(!SettingFile->open(QIODevice::ReadWrite | QIODevice::Truncate))
{
delete SettingFile;
return RET_ERROR;
}
QDataStream Strm(SettingFile);
int MagicNbr = 0xC01DCAFE;
Strm << MagicNbr
<< mPinHoldTime
<< mIgnoreVisualInspection
<< mIOModuleIPAddress
<< mIncludeLogInReport;
SettingFile->close();
delete SettingFile;
return RET_OK;
}
int CTestBenchSettings::LoadSettingFromFile()
{
QFile *SettingFile = new QFile("./Cablotron.csf");
if(!SettingFile->open(QIODevice::ReadOnly))
{
delete SettingFile;
return RET_ERROR;
}
QDataStream Strm(SettingFile);
int MagicNbr;
Strm >> MagicNbr;
if(MagicNbr != (int)0xC01DCAFE)
{
return RET_ERROR;
SettingFile->close();
delete SettingFile;
}
Strm >> mPinHoldTime
>> mIgnoreVisualInspection
>> mIOModuleIPAddress
>> mIncludeLogInReport;
SettingFile->close();
delete SettingFile;
return RET_OK;
}

View File

@ -7,11 +7,16 @@ class CTestBenchSettings
public: public:
CTestBenchSettings(); CTestBenchSettings();
int LoadSettings(); int LoadSettingFromFile();
int SaveSettingsToFile();
int mPinHoldTime; int mPinHoldTime;
bool mIgnoreVisualInspection; bool mIgnoreVisualInspection;
QString mIOModuleIPAddress; QString mIOModuleIPAddress;
bool mIncludeLogInReport;
}; };

View File

@ -4,6 +4,7 @@
#include <QTextStream> #include <QTextStream>
#include <QMessageBox> #include <QMessageBox>
#include <QTextCodec> #include <QTextCodec>
#include "TestBenchSettings.h"
CTestReport::CTestReport() CTestReport::CTestReport()
{ {
@ -70,7 +71,7 @@ CAutomatedTestReport *CTestReport::GetAutomatedTestReport()
return &mAutomatedTestReport; return &mAutomatedTestReport;
} }
int CTestReport::SaveReportToFile() int CTestReport::SaveReportToFile(CTestBenchSettings *BenchSettings)
{ {
QFile *ReportFile; QFile *ReportFile;
//QTextStream ReportStream; //QTextStream ReportStream;
@ -102,6 +103,18 @@ int CTestReport::SaveReportToFile()
ReportStream << QString("Date de l'essai: ") << QDateTime::currentDateTime().toString("yyyy-MM-dd") << "\n"; ReportStream << QString("Date de l'essai: ") << QDateTime::currentDateTime().toString("yyyy-MM-dd") << "\n";
ReportStream << "Version du logiciel de test: " << mSoftwareVersion << "\n\n"; ReportStream << "Version du logiciel de test: " << mSoftwareVersion << "\n\n";
ReportStream << "-----------------------------------------\n"; ReportStream << "-----------------------------------------\n";
ReportStream << QString("Paramètres du test: \n");
ReportStream << QString("Temps de maintien des contacts: %1ms\n").arg(BenchSettings->mPinHoldTime);
if(BenchSettings->mIgnoreVisualInspection)
{
ReportStream << QString("Ignorer inspection visuelle: OUI\n");
}
else
{
ReportStream << QString("Ignorer inspection visuelle: NON\n");
}
ReportStream << QString("Adresse IP des modules d'I/O : %1\n\n").arg(BenchSettings->mIOModuleIPAddress);
ReportStream << "-----------------------------------------\n";
ReportStream << QString("Paramètres du câble: \n"); ReportStream << QString("Paramètres du câble: \n");
ReportStream << QString("Identification du câble: ") << mCableParameters.mCableIdentification << "\n"; ReportStream << QString("Identification du câble: ") << mCableParameters.mCableIdentification << "\n";
ReportStream << "Station: " << mCableParameters.mStationCodeName << " - "<< mCableParameters.mStationName << "\n"; ReportStream << "Station: " << mCableParameters.mStationCodeName << " - "<< mCableParameters.mStationName << "\n";
@ -147,8 +160,12 @@ int CTestReport::SaveReportToFile()
ReportStream << QString("\n\n\n Signature de l'opérateur de test: _________________________________________\n\n"); ReportStream << QString("\n\n\n Signature de l'opérateur de test: _________________________________________\n\n");
ReportStream << QString(" Date: _________________________________________\n\n"); ReportStream << QString(" Date: _________________________________________\n\n");
ReportStream << "-----------------------------------------\n"; ReportStream << "-----------------------------------------\n";
ReportStream << "Log du test:\n";
ReportStream << mTestLog; if(BenchSettings->mIncludeLogInReport)
{
ReportStream << "Log du test:\n";
ReportStream << mTestLog;
}
ReportFile->close(); ReportFile->close();
delete ReportFile; delete ReportFile;

View File

@ -8,6 +8,8 @@
#include "AutomatedTestReport.h" #include "AutomatedTestReport.h"
#include <QObject> #include <QObject>
class CTestBenchSettings;
class CTestReport : public QObject class CTestReport : public QObject
{ {
Q_OBJECT Q_OBJECT
@ -24,7 +26,7 @@ public:
bool GetGlobalAutoTestResult(); bool GetGlobalAutoTestResult();
int SaveReportToFile(); int SaveReportToFile(CTestBenchSettings *BenchSettings);
QString GetLastReportFileName(); QString GetLastReportFileName();

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'CMainPage.ui' ** Form generated from reading UI file 'CMainPage.ui'
** **
** Created: Fri May 10 14:02:03 2019 ** Created: Mon May 13 08:38:40 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'CableTestPage.ui' ** Form generated from reading UI file 'CableTestPage.ui'
** **
** Created: Fri May 10 15:48:28 2019 ** Created: Mon May 13 09:55:56 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!
@ -14,7 +14,6 @@
#include <QtGui/QAction> #include <QtGui/QAction>
#include <QtGui/QApplication> #include <QtGui/QApplication>
#include <QtGui/QButtonGroup> #include <QtGui/QButtonGroup>
#include <QtGui/QCheckBox>
#include <QtGui/QComboBox> #include <QtGui/QComboBox>
#include <QtGui/QFrame> #include <QtGui/QFrame>
#include <QtGui/QGridLayout> #include <QtGui/QGridLayout>
@ -58,15 +57,15 @@ public:
QLabel *mOutputContactsTextLabel; QLabel *mOutputContactsTextLabel;
QPushButton *mNewCableBtn; QPushButton *mNewCableBtn;
QFrame *frame; QFrame *frame;
QCheckBox *mCableIdentStepChkBx;
QCheckBox *mVisualInspStepChkBx;
QCheckBox *mConSelStepChkBx;
QGroupBox *groupBox; QGroupBox *groupBox;
QPushButton *mStartTestBtn; QPushButton *mStartTestBtn;
QPushButton *mReinitTestBtn; QPushButton *mReinitTestBtn;
QGroupBox *groupBox_2; QGroupBox *groupBox_2;
QPushButton *mStartManualTestBtn; QPushButton *mStartManualTestBtn;
QPushButton *mSaveReportBtn; QPushButton *mSaveReportBtn;
QLabel *mCableIdentStepLabel;
QLabel *mVisualInspectionStepLabel;
QLabel *mConnectorSelStepLabel;
QLabel *mInspVisuelleLabel_2; QLabel *mInspVisuelleLabel_2;
QTextBrowser *mTestLogTextBox; QTextBrowser *mTestLogTextBox;
QGroupBox *groupBox_3; QGroupBox *groupBox_3;
@ -192,24 +191,12 @@ public:
mNewCableBtn->setGeometry(QRect(430, 20, 91, 23)); mNewCableBtn->setGeometry(QRect(430, 20, 91, 23));
frame = new QFrame(CCableTestPage); frame = new QFrame(CCableTestPage);
frame->setObjectName(QString::fromUtf8("frame")); frame->setObjectName(QString::fromUtf8("frame"));
frame->setGeometry(QRect(50, 220, 491, 131)); frame->setGeometry(QRect(50, 220, 621, 131));
frame->setFrameShape(QFrame::Box); frame->setFrameShape(QFrame::Box);
frame->setFrameShadow(QFrame::Raised); frame->setFrameShadow(QFrame::Raised);
mCableIdentStepChkBx = new QCheckBox(frame);
mCableIdentStepChkBx->setObjectName(QString::fromUtf8("mCableIdentStepChkBx"));
mCableIdentStepChkBx->setGeometry(QRect(20, 20, 151, 17));
mCableIdentStepChkBx->setCheckable(false);
mVisualInspStepChkBx = new QCheckBox(frame);
mVisualInspStepChkBx->setObjectName(QString::fromUtf8("mVisualInspStepChkBx"));
mVisualInspStepChkBx->setGeometry(QRect(20, 50, 151, 17));
mVisualInspStepChkBx->setCheckable(true);
mConSelStepChkBx = new QCheckBox(frame);
mConSelStepChkBx->setObjectName(QString::fromUtf8("mConSelStepChkBx"));
mConSelStepChkBx->setGeometry(QRect(20, 80, 191, 17));
mConSelStepChkBx->setCheckable(false);
groupBox = new QGroupBox(frame); groupBox = new QGroupBox(frame);
groupBox->setObjectName(QString::fromUtf8("groupBox")); groupBox->setObjectName(QString::fromUtf8("groupBox"));
groupBox->setGeometry(QRect(230, 10, 121, 91)); groupBox->setGeometry(QRect(310, 10, 121, 91));
mStartTestBtn = new QPushButton(groupBox); mStartTestBtn = new QPushButton(groupBox);
mStartTestBtn->setObjectName(QString::fromUtf8("mStartTestBtn")); mStartTestBtn->setObjectName(QString::fromUtf8("mStartTestBtn"));
mStartTestBtn->setGeometry(QRect(20, 20, 91, 23)); mStartTestBtn->setGeometry(QRect(20, 20, 91, 23));
@ -218,13 +205,22 @@ public:
mReinitTestBtn->setGeometry(QRect(20, 50, 91, 23)); mReinitTestBtn->setGeometry(QRect(20, 50, 91, 23));
groupBox_2 = new QGroupBox(frame); groupBox_2 = new QGroupBox(frame);
groupBox_2->setObjectName(QString::fromUtf8("groupBox_2")); groupBox_2->setObjectName(QString::fromUtf8("groupBox_2"));
groupBox_2->setGeometry(QRect(370, 10, 111, 80)); groupBox_2->setGeometry(QRect(480, 10, 111, 80));
mStartManualTestBtn = new QPushButton(groupBox_2); mStartManualTestBtn = new QPushButton(groupBox_2);
mStartManualTestBtn->setObjectName(QString::fromUtf8("mStartManualTestBtn")); mStartManualTestBtn->setObjectName(QString::fromUtf8("mStartManualTestBtn"));
mStartManualTestBtn->setGeometry(QRect(20, 30, 75, 23)); mStartManualTestBtn->setGeometry(QRect(20, 30, 75, 23));
mSaveReportBtn = new QPushButton(frame); mSaveReportBtn = new QPushButton(frame);
mSaveReportBtn->setObjectName(QString::fromUtf8("mSaveReportBtn")); mSaveReportBtn->setObjectName(QString::fromUtf8("mSaveReportBtn"));
mSaveReportBtn->setGeometry(QRect(360, 100, 121, 23)); mSaveReportBtn->setGeometry(QRect(480, 100, 121, 23));
mCableIdentStepLabel = new QLabel(frame);
mCableIdentStepLabel->setObjectName(QString::fromUtf8("mCableIdentStepLabel"));
mCableIdentStepLabel->setGeometry(QRect(20, 20, 201, 16));
mVisualInspectionStepLabel = new QLabel(frame);
mVisualInspectionStepLabel->setObjectName(QString::fromUtf8("mVisualInspectionStepLabel"));
mVisualInspectionStepLabel->setGeometry(QRect(20, 50, 201, 16));
mConnectorSelStepLabel = new QLabel(frame);
mConnectorSelStepLabel->setObjectName(QString::fromUtf8("mConnectorSelStepLabel"));
mConnectorSelStepLabel->setGeometry(QRect(20, 80, 271, 16));
mInspVisuelleLabel_2 = new QLabel(CCableTestPage); mInspVisuelleLabel_2 = new QLabel(CCableTestPage);
mInspVisuelleLabel_2->setObjectName(QString::fromUtf8("mInspVisuelleLabel_2")); mInspVisuelleLabel_2->setObjectName(QString::fromUtf8("mInspVisuelleLabel_2"));
mInspVisuelleLabel_2->setGeometry(QRect(50, 200, 221, 20)); mInspVisuelleLabel_2->setGeometry(QRect(50, 200, 221, 20));
@ -236,7 +232,7 @@ public:
mTestLogTextBox->setFrameShadow(QFrame::Plain); mTestLogTextBox->setFrameShadow(QFrame::Plain);
groupBox_3 = new QGroupBox(CCableTestPage); groupBox_3 = new QGroupBox(CCableTestPage);
groupBox_3->setObjectName(QString::fromUtf8("groupBox_3")); groupBox_3->setObjectName(QString::fromUtf8("groupBox_3"));
groupBox_3->setGeometry(QRect(600, 220, 231, 131)); groupBox_3->setGeometry(QRect(720, 220, 231, 131));
mAutoTestResultLabel = new QLabel(groupBox_3); mAutoTestResultLabel = new QLabel(groupBox_3);
mAutoTestResultLabel->setObjectName(QString::fromUtf8("mAutoTestResultLabel")); mAutoTestResultLabel->setObjectName(QString::fromUtf8("mAutoTestResultLabel"));
mAutoTestResultLabel->setGeometry(QRect(30, 40, 181, 41)); mAutoTestResultLabel->setGeometry(QRect(30, 40, 181, 41));
@ -273,18 +269,15 @@ public:
mInputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts entr\303\251e", 0, QApplication::UnicodeUTF8)); mInputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts entr\303\251e", 0, QApplication::UnicodeUTF8));
mOutputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts sortie", 0, QApplication::UnicodeUTF8)); mOutputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts sortie", 0, QApplication::UnicodeUTF8));
mNewCableBtn->setText(QApplication::translate("CCableTestPage", "Nouveau C\303\242ble", 0, QApplication::UnicodeUTF8)); mNewCableBtn->setText(QApplication::translate("CCableTestPage", "Nouveau C\303\242ble", 0, QApplication::UnicodeUTF8));
mCableIdentStepChkBx->setText(QApplication::translate("CCableTestPage", "1. Identification du c\303\242ble", 0, QApplication::UnicodeUTF8));
#ifndef QT_NO_TOOLTIP
mVisualInspStepChkBx->setToolTip(QString());
#endif // QT_NO_TOOLTIP
mVisualInspStepChkBx->setText(QApplication::translate("CCableTestPage", "2. Inspection visuelle", 0, QApplication::UnicodeUTF8));
mConSelStepChkBx->setText(QApplication::translate("CCableTestPage", "3. S\303\251lection du connecteur d'entr\303\251e", 0, QApplication::UnicodeUTF8));
groupBox->setTitle(QApplication::translate("CCableTestPage", "Test Automatique", 0, QApplication::UnicodeUTF8)); groupBox->setTitle(QApplication::translate("CCableTestPage", "Test Automatique", 0, QApplication::UnicodeUTF8));
mStartTestBtn->setText(QApplication::translate("CCableTestPage", "D\303\251marrer test", 0, QApplication::UnicodeUTF8)); mStartTestBtn->setText(QApplication::translate("CCableTestPage", "D\303\251marrer test", 0, QApplication::UnicodeUTF8));
mReinitTestBtn->setText(QApplication::translate("CCableTestPage", "R\303\251initialiser test", 0, QApplication::UnicodeUTF8)); mReinitTestBtn->setText(QApplication::translate("CCableTestPage", "R\303\251initialiser test", 0, QApplication::UnicodeUTF8));
groupBox_2->setTitle(QApplication::translate("CCableTestPage", "Test Manuel", 0, QApplication::UnicodeUTF8)); groupBox_2->setTitle(QApplication::translate("CCableTestPage", "Test Manuel", 0, QApplication::UnicodeUTF8));
mStartManualTestBtn->setText(QApplication::translate("CCableTestPage", "Ex\303\251cuter", 0, QApplication::UnicodeUTF8)); mStartManualTestBtn->setText(QApplication::translate("CCableTestPage", "Ex\303\251cuter", 0, QApplication::UnicodeUTF8));
mSaveReportBtn->setText(QApplication::translate("CCableTestPage", "Sauvegarder Rapport", 0, QApplication::UnicodeUTF8)); mSaveReportBtn->setText(QApplication::translate("CCableTestPage", "Sauvegarder Rapport", 0, QApplication::UnicodeUTF8));
mCableIdentStepLabel->setText(QApplication::translate("CCableTestPage", "1. Identification du c\303\242ble: \303\200 REMPLIR", 0, QApplication::UnicodeUTF8));
mVisualInspectionStepLabel->setText(QApplication::translate("CCableTestPage", "2. Inspection visuelle: \303\200 EX\303\211CUTER", 0, QApplication::UnicodeUTF8));
mConnectorSelStepLabel->setText(QApplication::translate("CCableTestPage", "3. S\303\251lection du connecteur d'entr\303\251e: \303\200 S\303\211LECTIONNER", 0, QApplication::UnicodeUTF8));
mInspVisuelleLabel_2->setText(QApplication::translate("CCableTestPage", "Contr\303\264le du test \303\251lectrique", 0, QApplication::UnicodeUTF8)); mInspVisuelleLabel_2->setText(QApplication::translate("CCableTestPage", "Contr\303\264le du test \303\251lectrique", 0, QApplication::UnicodeUTF8));
groupBox_3->setTitle(QApplication::translate("CCableTestPage", "R\303\251sultat du test", 0, QApplication::UnicodeUTF8)); groupBox_3->setTitle(QApplication::translate("CCableTestPage", "R\303\251sultat du test", 0, QApplication::UnicodeUTF8));
mAutoTestResultLabel->setText(QApplication::translate("CCableTestPage", "En cours...", 0, QApplication::UnicodeUTF8)); mAutoTestResultLabel->setText(QApplication::translate("CCableTestPage", "En cours...", 0, QApplication::UnicodeUTF8));

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'OptionsPage.ui' ** Form generated from reading UI file 'OptionsPage.ui'
** **
** Created: Fri May 10 14:02:03 2019 ** Created: Mon May 13 10:53:13 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!
@ -26,12 +26,9 @@ QT_BEGIN_NAMESPACE
class Ui_COptionsPage class Ui_COptionsPage
{ {
public: public:
QLabel *label;
QLabel *label_2; QLabel *label_2;
QSpinBox *mTestHoldTimeHighSpinBx; QSpinBox *mTestHoldTimeHighSpinBx;
QLabel *label_3; QLabel *label_3;
QLabel *label_4;
QSpinBox *mTestHoldTimeLowSpinBx;
QSpinBox *mIPAdd1SpinBox; QSpinBox *mIPAdd1SpinBox;
QSpinBox *mIPAdd2SpinBox; QSpinBox *mIPAdd2SpinBox;
QSpinBox *mIPAdd3SpinBox; QSpinBox *mIPAdd3SpinBox;
@ -39,73 +36,63 @@ public:
QLabel *label_5; QLabel *label_5;
QPushButton *mApplyAndSaveBtn; QPushButton *mApplyAndSaveBtn;
QCheckBox *mIgnoreVisualInspChkBx; QCheckBox *mIgnoreVisualInspChkBx;
QCheckBox *mIncludeLogInReportChkBx;
void setupUi(QWidget *COptionsPage) void setupUi(QWidget *COptionsPage)
{ {
if (COptionsPage->objectName().isEmpty()) if (COptionsPage->objectName().isEmpty())
COptionsPage->setObjectName(QString::fromUtf8("COptionsPage")); COptionsPage->setObjectName(QString::fromUtf8("COptionsPage"));
COptionsPage->resize(1119, 647); COptionsPage->resize(564, 647);
label = new QLabel(COptionsPage);
label->setObjectName(QString::fromUtf8("label"));
label->setGeometry(QRect(100, 40, 181, 31));
QFont font;
font.setPointSize(14);
label->setFont(font);
label_2 = new QLabel(COptionsPage); label_2 = new QLabel(COptionsPage);
label_2->setObjectName(QString::fromUtf8("label_2")); label_2->setObjectName(QString::fromUtf8("label_2"));
label_2->setGeometry(QRect(530, 40, 181, 31)); label_2->setGeometry(QRect(170, 40, 181, 31));
QFont font;
font.setPointSize(14);
label_2->setFont(font); label_2->setFont(font);
mTestHoldTimeHighSpinBx = new QSpinBox(COptionsPage); mTestHoldTimeHighSpinBx = new QSpinBox(COptionsPage);
mTestHoldTimeHighSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeHighSpinBx")); mTestHoldTimeHighSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeHighSpinBx"));
mTestHoldTimeHighSpinBx->setGeometry(QRect(680, 110, 61, 22)); mTestHoldTimeHighSpinBx->setGeometry(QRect(320, 110, 61, 22));
mTestHoldTimeHighSpinBx->setMinimum(100); mTestHoldTimeHighSpinBx->setMinimum(100);
mTestHoldTimeHighSpinBx->setMaximum(5000); mTestHoldTimeHighSpinBx->setMaximum(5000);
mTestHoldTimeHighSpinBx->setValue(1000); mTestHoldTimeHighSpinBx->setValue(1000);
label_3 = new QLabel(COptionsPage); label_3 = new QLabel(COptionsPage);
label_3->setObjectName(QString::fromUtf8("label_3")); label_3->setObjectName(QString::fromUtf8("label_3"));
label_3->setGeometry(QRect(500, 110, 171, 20)); label_3->setGeometry(QRect(140, 110, 171, 20));
QFont font1; QFont font1;
font1.setPointSize(10); font1.setPointSize(10);
label_3->setFont(font1); label_3->setFont(font1);
label_4 = new QLabel(COptionsPage);
label_4->setObjectName(QString::fromUtf8("label_4"));
label_4->setGeometry(QRect(500, 150, 171, 20));
label_4->setFont(font1);
mTestHoldTimeLowSpinBx = new QSpinBox(COptionsPage);
mTestHoldTimeLowSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeLowSpinBx"));
mTestHoldTimeLowSpinBx->setGeometry(QRect(680, 150, 61, 22));
mTestHoldTimeLowSpinBx->setMinimum(1);
mTestHoldTimeLowSpinBx->setMaximum(5000);
mTestHoldTimeLowSpinBx->setValue(1);
mIPAdd1SpinBox = new QSpinBox(COptionsPage); mIPAdd1SpinBox = new QSpinBox(COptionsPage);
mIPAdd1SpinBox->setObjectName(QString::fromUtf8("mIPAdd1SpinBox")); mIPAdd1SpinBox->setObjectName(QString::fromUtf8("mIPAdd1SpinBox"));
mIPAdd1SpinBox->setGeometry(QRect(510, 340, 42, 22)); mIPAdd1SpinBox->setGeometry(QRect(140, 311, 42, 22));
mIPAdd1SpinBox->setMaximum(255); mIPAdd1SpinBox->setMaximum(255);
mIPAdd1SpinBox->setValue(192); mIPAdd1SpinBox->setValue(192);
mIPAdd2SpinBox = new QSpinBox(COptionsPage); mIPAdd2SpinBox = new QSpinBox(COptionsPage);
mIPAdd2SpinBox->setObjectName(QString::fromUtf8("mIPAdd2SpinBox")); mIPAdd2SpinBox->setObjectName(QString::fromUtf8("mIPAdd2SpinBox"));
mIPAdd2SpinBox->setGeometry(QRect(560, 340, 42, 22)); mIPAdd2SpinBox->setGeometry(QRect(190, 311, 42, 22));
mIPAdd2SpinBox->setMaximum(255); mIPAdd2SpinBox->setMaximum(255);
mIPAdd2SpinBox->setValue(168); mIPAdd2SpinBox->setValue(168);
mIPAdd3SpinBox = new QSpinBox(COptionsPage); mIPAdd3SpinBox = new QSpinBox(COptionsPage);
mIPAdd3SpinBox->setObjectName(QString::fromUtf8("mIPAdd3SpinBox")); mIPAdd3SpinBox->setObjectName(QString::fromUtf8("mIPAdd3SpinBox"));
mIPAdd3SpinBox->setGeometry(QRect(610, 340, 42, 22)); mIPAdd3SpinBox->setGeometry(QRect(240, 311, 42, 22));
mIPAdd3SpinBox->setMaximum(255); mIPAdd3SpinBox->setMaximum(255);
mIPAdd4SpinBox = new QSpinBox(COptionsPage); mIPAdd4SpinBox = new QSpinBox(COptionsPage);
mIPAdd4SpinBox->setObjectName(QString::fromUtf8("mIPAdd4SpinBox")); mIPAdd4SpinBox->setObjectName(QString::fromUtf8("mIPAdd4SpinBox"));
mIPAdd4SpinBox->setGeometry(QRect(660, 340, 42, 22)); mIPAdd4SpinBox->setGeometry(QRect(290, 311, 42, 22));
mIPAdd4SpinBox->setMaximum(255); mIPAdd4SpinBox->setMaximum(255);
mIPAdd4SpinBox->setValue(52); mIPAdd4SpinBox->setValue(52);
label_5 = new QLabel(COptionsPage); label_5 = new QLabel(COptionsPage);
label_5->setObjectName(QString::fromUtf8("label_5")); label_5->setObjectName(QString::fromUtf8("label_5"));
label_5->setGeometry(QRect(510, 310, 171, 20)); label_5->setGeometry(QRect(140, 270, 351, 31));
label_5->setFont(font1); label_5->setFont(font1);
mApplyAndSaveBtn = new QPushButton(COptionsPage); mApplyAndSaveBtn = new QPushButton(COptionsPage);
mApplyAndSaveBtn->setObjectName(QString::fromUtf8("mApplyAndSaveBtn")); mApplyAndSaveBtn->setObjectName(QString::fromUtf8("mApplyAndSaveBtn"));
mApplyAndSaveBtn->setGeometry(QRect(390, 550, 131, 23)); mApplyAndSaveBtn->setGeometry(QRect(170, 470, 131, 23));
mIgnoreVisualInspChkBx = new QCheckBox(COptionsPage); mIgnoreVisualInspChkBx = new QCheckBox(COptionsPage);
mIgnoreVisualInspChkBx->setObjectName(QString::fromUtf8("mIgnoreVisualInspChkBx")); mIgnoreVisualInspChkBx->setObjectName(QString::fromUtf8("mIgnoreVisualInspChkBx"));
mIgnoreVisualInspChkBx->setGeometry(QRect(500, 200, 221, 17)); mIgnoreVisualInspChkBx->setGeometry(QRect(140, 160, 221, 17));
mIncludeLogInReportChkBx = new QCheckBox(COptionsPage);
mIncludeLogInReportChkBx->setObjectName(QString::fromUtf8("mIncludeLogInReportChkBx"));
mIncludeLogInReportChkBx->setGeometry(QRect(140, 200, 221, 17));
retranslateUi(COptionsPage); retranslateUi(COptionsPage);
@ -115,13 +102,13 @@ public:
void retranslateUi(QWidget *COptionsPage) void retranslateUi(QWidget *COptionsPage)
{ {
COptionsPage->setWindowTitle(QApplication::translate("COptionsPage", "Form", 0, QApplication::UnicodeUTF8)); COptionsPage->setWindowTitle(QApplication::translate("COptionsPage", "Form", 0, QApplication::UnicodeUTF8));
label->setText(QApplication::translate("COptionsPage", "Valeurs par d\303\251faut", 0, QApplication::UnicodeUTF8));
label_2->setText(QApplication::translate("COptionsPage", "Param\303\250tres de test", 0, QApplication::UnicodeUTF8)); label_2->setText(QApplication::translate("COptionsPage", "Param\303\250tres de test", 0, QApplication::UnicodeUTF8));
label_3->setText(QApplication::translate("COptionsPage", "Temps de maintien haut (ms)", 0, QApplication::UnicodeUTF8)); label_3->setText(QApplication::translate("COptionsPage", "Temps de maintien haut (ms)", 0, QApplication::UnicodeUTF8));
label_4->setText(QApplication::translate("COptionsPage", "Temps de maintien bas (ms)", 0, QApplication::UnicodeUTF8)); label_5->setText(QApplication::translate("COptionsPage", "Adresse IP module I/O \n"
label_5->setText(QApplication::translate("COptionsPage", "Adresse IP module I/O", 0, QApplication::UnicodeUTF8)); "(red\303\251marrage de l'application requis)", 0, QApplication::UnicodeUTF8));
mApplyAndSaveBtn->setText(QApplication::translate("COptionsPage", "Appliquer && Sauvegarder", 0, QApplication::UnicodeUTF8)); mApplyAndSaveBtn->setText(QApplication::translate("COptionsPage", "Appliquer && Sauvegarder", 0, QApplication::UnicodeUTF8));
mIgnoreVisualInspChkBx->setText(QApplication::translate("COptionsPage", "Ignorer l'inspection visuelle", 0, QApplication::UnicodeUTF8)); mIgnoreVisualInspChkBx->setText(QApplication::translate("COptionsPage", "Ignorer l'inspection visuelle", 0, QApplication::UnicodeUTF8));
mIncludeLogInReportChkBx->setText(QApplication::translate("COptionsPage", "Inclure LOG dans le rapport", 0, QApplication::UnicodeUTF8));
} // retranslateUi } // retranslateUi
}; };

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'VisualInspectionPage.ui' ** Form generated from reading UI file 'VisualInspectionPage.ui'
** **
** Created: Fri May 10 14:02:03 2019 ** Created: Mon May 13 08:38:40 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!