This commit is contained in:
matteo porta 2022-07-25 11:16:14 +02:00
parent ef0b6cda54
commit b95ae1fa02
35 changed files with 626 additions and 276 deletions

View File

@ -1,4 +1,5 @@
#!/bin/bash
cd "$(dirname "$0")"
source "./venv/bin/activate" || source "./venv/Scripts/activate" || :
"$(python3 -c "import sys; print(sys.path[-1])")/qt5_applications/Qt/bin/designer"
python3 -m pip install --upgrade qt5-tools
"$(python3 -c "import sys; print(sys.path[-1])")/qt5_applications/Qt/bin/designer" $*

View File

@ -54,15 +54,12 @@ try:
# IMPORT PROJECT ONLY AFTER SETTING UP SIGNAL, FAULTHANDLER AND LOGGHING
from components import (ArchiveSynchronizer, GalaxyCamera, NeoPixels,
Os_Label_Printer, RemoteAPI,
TecnaMarpossProvasetT3P, TestComponent, Vision,
VisionSaver)
TecnaMarpossProvasetT3P, Vision, VisionSaver)
from lib.db import Users
from lib.helpers import ConfigReader
from PyQt5.QtCore import QObject, QThread, pyqtSignal
from PyQt5.QtWidgets import QApplication, QMessageBox
from ui import (About, Archive, Autotests_Archive, Login, Main_Window,
Recipes_Management, Steps_Management, Test,
Users_Management)
from ui import About, Archive, Login, Main_Window, Test, Users_Management
class Main(QObject):
do = pyqtSignal(dict)
@ -135,12 +132,12 @@ try:
self.main_window.users_management_a.triggered.connect(lambda checked, self=weakref.ref(self): self().main_window.open_dialog(Users_Management()))
if "--users-management" in sys.argv:
self.main_window.users_management_a.trigger()
self.main_window.recipes_management_a.triggered.connect(lambda checked, self=weakref.ref(self): self().main_window.open_dialog(Recipes_Management()))
if "--recipes-management" in sys.argv:
self.main_window.recipes_management_a.trigger()
self.main_window.steps_management_a.triggered.connect(lambda checked, self=weakref.ref(self): self().main_window.open_dialog(Steps_Management()))
if "--steps-management" in sys.argv:
self.main_window.steps_management_a.trigger()
# self.main_window.recipes_management_a.triggered.connect(lambda checked, self=weakref.ref(self): self().main_window.open_dialog(Recipes_Management()))
# if "--recipes-management" in sys.argv:
# self.main_window.recipes_management_a.trigger()
# self.main_window.steps_management_a.triggered.connect(lambda checked, self=weakref.ref(self): self().main_window.open_dialog(Steps_Management()))
# if "--steps-management" in sys.argv:
# self.main_window.steps_management_a.trigger()
# OPEN LOGIN TAB
self.open_login()
# SHOW MAIN WINDOW

View File

@ -17,6 +17,7 @@ from .qml_led import Qml_Led
from .qml_switch import Qml_Switch
from .qml_widget import Qml_Widget
from .recipe_selection import Recipe_Selection
from .recipe_spec_and_step_editor import Recipe_Spec_And_Step_Editor
from .recipe_spec_editor import Recipe_Spec_Editor
from .recipes_management import Recipes_Management
from .steps_management import Steps_Management

View File

@ -1,130 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>About</class>
<widget class="QWidget" name="About">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>316</width>
<height>262</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label_6">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">font: 87 7pt &quot;Arial Black&quot;;</string>
</property>
<property name="text">
<string>POWERED BY</string>
</property>
<property name="textFormat">
<enum>Qt::AutoText</enum>
</property>
<property name="scaledContents">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="logo_l">
<property name="text">
<string>-</string>
</property>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Contatti</string>
</property>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Website:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="label_13">
<property name="text">
<string>www.neosystems.it</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_10">
<property name="text">
<string>E-mail:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="label_14">
<property name="text">
<string>info@neosystems.it</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_11">
<property name="text">
<string>Telefono:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="label_15">
<property name="text">
<string>+39 0118000876</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_12">
<property name="text">
<string>P.IVA:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="label_16">
<property name="text">
<string>11836090016</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Indirizzo:</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Via Vittime delle Foibe, 10 10036 - Settimo Torinese (TO)
</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
<class>About</class>
<widget class="QWidget" name="About">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>316</width>
<height>262</height>
</rect>
</property>
<property name="windowTitle">
<string>About</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label_6">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">font: 87 7pt &quot;Arial Black&quot;;</string>
</property>
<property name="text">
<string>POWERED BY</string>
</property>
<property name="textFormat">
<enum>Qt::AutoText</enum>
</property>
<property name="scaledContents">
<bool>false</bool>
</property>
</widget>
<resources/>
<connections/>
</item>
<item>
<widget class="QLabel" name="logo_l">
<property name="text">
<string>-</string>
</property>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Contatti</string>
</property>
<layout class="QFormLayout" name="formLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Website:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="label_13">
<property name="text">
<string>www.neosystems.it</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_10">
<property name="text">
<string>E-mail:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="label_14">
<property name="text">
<string>info@neosystems.it</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_11">
<property name="text">
<string>Telefono:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="label_15">
<property name="text">
<string>+39 0118000876</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_12">
<property name="text">
<string>P.IVA:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="label_16">
<property name="text">
<string>11836090016</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Indirizzo:</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Via Vittime delle Foibe, 10 10036 - Settimo Torinese (TO)
</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Test archive</class>
<widget class="QWidget" name="Test archive">
<class>Archive</class>
<widget class="QWidget" name="Archive">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>61</height>
</rect>
</property>
<property name="windowTitle">
<string>Archive</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="0">
<widget class="QPushButton" name="print_b">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Autotests archive</class>
<widget class="QWidget" name="Autotests archive">
<class>Autotests_Archive</class>
<widget class="QWidget" name="Autotests_Archive">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>61</height>
</rect>
</property>
<property name="windowTitle">
<string>Autotests archive</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="0">
<widget class="QPushButton" name="print_b">

View File

@ -47,10 +47,10 @@ class Cell:
self.field = field
self.row_number = row_number
self.crud = crud
self.set_readonly(self.readonly)
self.value = None
self.is_modified = False
self.connected_modified = False
self.set_readonly(self.readonly)
self.do_autocomplete(self.autocomplete)
def set_readonly(self, readonly):

View File

@ -22,6 +22,9 @@
<height>600</height>
</size>
</property>
<property name="windowTitle">
<string>Crud</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QGroupBox" name="db_gb">

View File

@ -1,34 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>28</width>
<height>28</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QWidget" name="centralWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>28</width>
<height>28</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QWidget" name="centralWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
<resources/>
<connections/>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -10,6 +10,9 @@
<height>696</height>
</rect>
</property>
<property name="windowTitle">
<string>Editor</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="3">
<widget class="QGroupBox" name="groupBox_4">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Leak Step Editor</class>
<widget class="QWidget" name="Leak Step Editor">
<class>Leak_Step_Editor</class>
<widget class="QWidget" name="Leak_Step_Editor">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>194</height>
</rect>
</property>
<property name="windowTitle">
<string>Leak Step Editor</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="0">
<widget class="QGroupBox" name="groupBox_2">

View File

@ -6,10 +6,13 @@
<rect>
<x>0</x>
<y>0</y>
<width>1064</width>
<width>1079</width>
<height>294</height>
</rect>
</property>
<property name="windowTitle">
<string>Login</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">
<spacer name="horizontalSpacer">

View File

@ -10,6 +10,9 @@
<height>40</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget"/>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
@ -17,7 +20,7 @@
<x>0</x>
<y>0</y>
<width>94</width>
<height>24</height>
<height>20</height>
</rect>
</property>
<widget class="QMenu" name="menuAbout">
@ -31,8 +34,6 @@
<string>Amministrazione</string>
</property>
<addaction name="users_management_a"/>
<addaction name="recipes_management_a"/>
<addaction name="steps_management_a"/>
<addaction name="quit_a"/>
</widget>
<widget class="QMenu" name="menuStrumenti">

View File

@ -6,7 +6,7 @@ from PyQt5.QtGui import QKeySequence
from PyQt5.QtWidgets import QShortcut
from ui.crud import Crud, Json_External_Dialog_Editor_Cell_Widget
from ui.helpers import replace_widget
from ui.recipe_spec_editor import Recipe_Spec_Editor
from ui.recipe_spec_and_step_editor import Recipe_Spec_And_Step_Editor
from ui.widget import Widget
@ -17,8 +17,9 @@ class Recipe_Selection(Widget):
super().__init__()
session = Users.get_session()
if session.is_admin:
readonly = False
readonly = ["id"]
crud_aliases = {
"id": "Id",
"name": "Ricetta",
"client": "Cliente",
"part_number": "N° disegno",
@ -48,7 +49,7 @@ class Recipe_Selection(Widget):
autocomplete={
"archived": False,
},
widget_classes={"spec": lambda *args, **kwargs: Json_External_Dialog_Editor_Cell_Widget(Recipe_Spec_Editor(), *args, **kwargs), },
widget_classes={"spec": lambda *args, **kwargs: Json_External_Dialog_Editor_Cell_Widget(Recipe_Spec_And_Step_Editor(), *args, **kwargs), },
)
replace_widget(self, "crud_w", self.crud)
self.crud_modified = None

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Recipe selection</class>
<widget class="QWidget" name="Recipe selection">
<class>Recipe_Selection</class>
<widget class="QWidget" name="Recipe_Selection">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>Recipe Selection</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="0">
<widget class="QPushButton" name="select_b">

View File

@ -0,0 +1 @@
from .recipe_spec_and_step_editor import Recipe_Spec_And_Step_Editor

View File

@ -0,0 +1,18 @@
from PyQt5.QtWidgets import QAbstractItemView
from ui.editor import Editor
class Recipe_Spec_And_Step_Editor(Editor):
def __init__(self):
super().__init__()
self.spec.update({
"steps": self.steps_lw,
})
self.steps_lw.setDragDropMode(QAbstractItemView.InternalMove)
def set_readonly(self, readonly):
super().set_readonly(readonly)
self.steps_lw.setDisabled(readonly)
self.remove_step_b.setDisabled(readonly)
self.steps_available_lw.setDisabled(readonly)
self.add_step_b.setDisabled(readonly)

View File

@ -0,0 +1,250 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Recipe_Spec_And_Step_Editor</class>
<widget class="QWidget" name="Recipe_Spec_And_Step_Editor">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>253</width>
<height>145</height>
</rect>
</property>
<property name="windowTitle">
<string>Recipe Spec And Step Editor</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>Scansione Codici</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox">
<property name="text">
<string>Fase Abilitata</string>
</property>
</widget>
</item>
<item row="0" column="0">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="3">
<widget class="QWidget" name="barcode_editor_w" native="true"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<attribute name="title">
<string>Perdite 1</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_6">
<item row="0" column="0">
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_2">
<property name="text">
<string>Fase Abilitata</string>
</property>
</widget>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="3">
<widget class="QWidget" name="leak_editor_1_w" native="true"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_3">
<attribute name="title">
<string>Perdite 2</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_5">
<item row="0" column="0">
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_3">
<property name="text">
<string>Fase Abilitata</string>
</property>
</widget>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="3">
<widget class="QWidget" name="leak_editor_2_w" native="true"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_4">
<attribute name="title">
<string>Visione</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<spacer name="horizontalSpacer_7">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_4">
<property name="text">
<string>Fase Abilitata</string>
</property>
</widget>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_8">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="3">
<widget class="QWidget" name="vision_editor_w" native="true"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_5">
<attribute name="title">
<string>Stampa Etichette</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<spacer name="horizontalSpacer_9">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_5">
<property name="text">
<string>Fase Abilitata</string>
</property>
</widget>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_10">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="3">
<widget class="QWidget" name="print_editor_w" native="true"/>
</item>
</layout>
</widget>
</widget>
</item>
<item row="1" column="0">
<widget class="QPushButton" name="save_b">
<property name="text">
<string>Salva</string>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Recipe Spec Editor</class>
<widget class="QWidget" name="Recipe Spec Editor">
<class>Recipe_Spec_Editor</class>
<widget class="QWidget" name="Recipe_Spec_Editor">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>293</height>
</rect>
</property>
<property name="windowTitle">
<string>Recipe Spec Editor</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="1">
<widget class="QLabel" name="label_2">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Recipes management</class>
<widget class="QWidget" name="Recipes management">
<class>Recipes_Management</class>
<widget class="QWidget" name="Recipes_Management">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>18</height>
</rect>
</property>
<property name="windowTitle">
<string>Recipes Management</string>
</property>
<layout class="QGridLayout" name="gridLayout"/>
</widget>
<resources/>

View File

@ -23,28 +23,24 @@ class Step_Spec_JEDECW(QPushButton, Cell):
self.dialog = Dialog()
self.dialog.setAttribute(Qt.WA_DeleteOnClose, on=False)
super().__init__(u"\u238B modifica")
print(readonly, autocomplete, field_name, field_alias, field, row_number, crud)
super(QPushButton).__init__(self, readonly=readonly, autocomplete=autocomplete, field_name=field_name, field_alias=field_alias, field=field, row_number=row_number, crud=crud)
print(self.readonly, self.autocomplete, self.field_name, self.field_alias, self.field, self.row_number, self.crud)
print("readonly, autocomplete, field_name, field_alias, field, row_number, crud")
raise Exception()
Cell.__init__(self, readonly=readonly, autocomplete=autocomplete, field_name=field_name, field_alias=field_alias, field=field, row_number=row_number, crud=crud)
self.update_editor()
self.crud.modified.connect(self.update_editor)
self.dialog.setWindowTitle(self.field_alias)
self.clicked.connect(self.dialog.show)
def update_editor(self):
print(self.editor, self.row_number, self.crud)
self.editor_type = self.crud.db_tw.cellWidget(self.row_number, self.crud.select_index["type"])._parse()
print(self.editor_type)
self.editor = self.editors[self.editor_type]
self.dialog.setCentralWidget(self.editor)
if self.dialog.centralWidget is not self.editor:
self.dialog.setCentralWidget(self.editor)
self.dialog.adjustSize()
def set_readonly(self, readonly):
for editor in self.editors.values():
editor.set_readonly(readonly)
def do_autocomplete(self, autocomplete):
self.update_editor()
for editor_type, editor in self.editors.items():
if autocomplete is None:
editor.do_autocomplete(None)

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Steps Management</class>
<widget class="QWidget" name="Steps Management">
<class>Steps_Management</class>
<widget class="QWidget" name="Steps_Management">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>18</height>
</rect>
</property>
<property name="windowTitle">
<string>Steps Management</string>
</property>
<layout class="QGridLayout" name="gridLayout"/>
</widget>
<resources/>

View File

@ -136,10 +136,9 @@ class Test(Widget):
def next(self, action=None):
self.log.debug(f"cycle next: cycle step: {self.step!r} action: {action!r}")
if self.step is not None:
current_w = self.cycle_available_steps[self.step.type]
if hasattr(current_w, "stop"):
current_w.stop()
current_w = self.centralWidget
if hasattr(current_w, "stop"):
current_w.stop()
if action == "change_recipe":
self.log.info(f"cycle next: action: {action!r}")
self.set_recipe(recipe=None)
@ -193,7 +192,8 @@ class Test(Widget):
w = self.cycle_available_steps[self.step.type]
if hasattr(w, "start"):
w.start(recipe=self.recipe, step=self.cycle_steps[self.cycle_index])
self.setCentralWidget(w)
if w is not current_w:
self.setCentralWidget(w)
if self.step.type == "done":
self.done()
self.next_timer.start(2000)

View File

@ -10,6 +10,9 @@
<height>85</height>
</rect>
</property>
<property name="windowTitle">
<string>Test</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="1" column="0">
<widget class="QWidget" name="centralWidget" native="true">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Admin permission</class>
<widget class="QWidget" name="Admin permission">
<class>Test_Admin_Permission</class>
<widget class="QWidget" name="Test_Admin_Permission">
<property name="geometry">
<rect>
<x>0</x>
@ -11,7 +11,7 @@
</rect>
</property>
<property name="windowTitle">
<string>Admin permission</string>
<string>Test Admin Permission</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="6" column="1">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Assembly</class>
<widget class="QWidget" name="Assembly">
<class>Test_Assembly</class>
<widget class="QWidget" name="Test_Assembly">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>108</height>
</rect>
</property>
<property name="windowTitle">
<string>Test Assembly</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="img_l">

View File

@ -1,7 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Autotest</class>
<widget class="QWidget" name="Autotest">
<class>Test_Autotest</class>
<widget class="QWidget" name="Test_Autotest">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>18</width>
<height>18</height>
</rect>
</property>
<property name="windowTitle">
<string>Test Autotest</string>
</property>
<layout class="QGridLayout" name="gridLayout"/>
</widget>
<resources/>

View File

@ -1,31 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Widget</class>
<widget class="QWidget" name="Widget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>500</width>
<height>500</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QPlainTextEdit" name="readout_t">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="backgroundVisible">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
<class>Test_Home</class>
<widget class="QWidget" name="Test_Home">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>500</width>
<height>500</height>
</rect>
</property>
<property name="windowTitle">
<string>Test Home</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QPlainTextEdit" name="readout_t">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="backgroundVisible">
<bool>false</bool>
</property>
</widget>
<resources/>
<connections/>
</ui>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Leak</class>
<widget class="QWidget" name="Leak">
<class>Test_Leak</class>
<widget class="QWidget" name="Test_Leak">
<property name="geometry">
<rect>
<x>0</x>
@ -11,7 +11,7 @@
</rect>
</property>
<property name="windowTitle">
<string>Leak</string>
<string>Test Leak</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="1">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Test</class>
<widget class="QWidget" name="Test">
<class>Test_Test</class>
<widget class="QWidget" name="Test_Test">
<property name="geometry">
<rect>
<x>0</x>
@ -11,7 +11,7 @@
</rect>
</property>
<property name="windowTitle">
<string>Test</string>
<string>Test Test</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Vision</class>
<widget class="QWidget" name="Vision">
<class>Test_Vision</class>
<widget class="QWidget" name="Test_Vision">
<property name="geometry">
<rect>
<x>0</x>
@ -11,7 +11,7 @@
</rect>
</property>
<property name="windowTitle">
<string>Vision</string>
<string>Test Vision</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Users management</class>
<widget class="QWidget" name="Users management">
<class>Users_Management</class>
<widget class="QWidget" name="Users_Management">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>18</height>
</rect>
</property>
<property name="windowTitle">
<string>Users Management</string>
</property>
<layout class="QGridLayout" name="gridLayout"/>
</widget>
<resources/>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Vision Step Editor</class>
<widget class="QWidget" name="Vision Step Editor">
<class>Vision_Step_Editor</class>
<widget class="QWidget" name="Vision_Step_Editor">
<property name="geometry">
<rect>
<x>0</x>
@ -10,6 +10,9 @@
<height>91</height>
</rect>
</property>
<property name="windowTitle">
<string>Vision Step Edito</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="0" colspan="2">
<widget class="QGroupBox" name="groupBox_6">

19
src/ui/widget/widget.ui Normal file
View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Widget</class>
<widget class="QWidget" name="Widget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>100</width>
<height>30</height>
</rect>
</property>
<property name="windowTitle">
<string>Widget</string>
</property>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,27 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>481</width>
<height>393</height>
</rect>
</property>
<widget class="QWidget" name="centralwidget"/>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>481</width>
<height>24</height>
</rect>
</property>
</widget>
</widget>
<resources/>
<connections/>
<class>Window</class>
<widget class="QMainWindow" name="Window">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>481</width>
<height>393</height>
</rect>
</property>
<property name="windowTitle">
<string>Window</string>
</property>
<widget class="QWidget" name="centralwidget"/>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>481</width>
<height>20</height>
</rect>
</property>
</widget>
</widget>
<resources/>
<connections/>
</ui>