From 3e88e41e4b003f480b3b02cbe809b9999e6421c4 Mon Sep 17 00:00:00 2001 From: bklronin Date: Thu, 2 Jan 2025 14:39:36 +0100 Subject: [PATCH] - Added new buttons and settings --- Gui.py | 694 +++++++++++-------- drawing_modules/draw_widget_solve.py | 2 + gui.ui | 993 ++++++++++++++++----------- 3 files changed, 1015 insertions(+), 674 deletions(-) diff --git a/Gui.py b/Gui.py index 937d55e..941b27f 100644 --- a/Gui.py +++ b/Gui.py @@ -16,16 +16,17 @@ from PySide6.QtGui import (QAction, QBrush, QColor, QConicalGradient, QIcon, QImage, QKeySequence, QLinearGradient, QPainter, QPalette, QPixmap, QRadialGradient, QTransform) -from PySide6.QtWidgets import (QApplication, QGridLayout, QGroupBox, QHBoxLayout, - QListWidget, QListWidgetItem, QMainWindow, QMenu, - QMenuBar, QPushButton, QSizePolicy, QStatusBar, - QTabWidget, QTextEdit, QVBoxLayout, QWidget) +from PySide6.QtWidgets import (QApplication, QFrame, QGridLayout, QGroupBox, + QHBoxLayout, QLabel, QListWidget, QListWidgetItem, + QMainWindow, QMenu, QMenuBar, QPushButton, + QSizePolicy, QSpinBox, QStatusBar, QTabWidget, + QTextEdit, QVBoxLayout, QWidget) class Ui_fluencyCAD(object): def setupUi(self, fluencyCAD): if not fluencyCAD.objectName(): fluencyCAD.setObjectName(u"fluencyCAD") - fluencyCAD.resize(2192, 1073) + fluencyCAD.resize(2192, 1109) self.actionNew_Project = QAction(fluencyCAD) self.actionNew_Project.setObjectName(u"actionNew_Project") self.actionLoad_Project = QAction(fluencyCAD) @@ -36,81 +37,13 @@ class Ui_fluencyCAD(object): self.centralwidget.setObjectName(u"centralwidget") self.gridLayout = QGridLayout(self.centralwidget) self.gridLayout.setObjectName(u"gridLayout") - self.groupBox_3 = QGroupBox(self.centralwidget) - self.groupBox_3.setObjectName(u"groupBox_3") - sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.groupBox_3.sizePolicy().hasHeightForWidth()) - self.groupBox_3.setSizePolicy(sizePolicy) - self.groupBox_3.setMaximumSize(QSize(200, 16777213)) - self.gridLayout_4 = QGridLayout(self.groupBox_3) - self.gridLayout_4.setObjectName(u"gridLayout_4") - self.pb_con_line = QPushButton(self.groupBox_3) - self.pb_con_line.setObjectName(u"pb_con_line") - self.pb_con_line.setCheckable(True) - self.pb_con_line.setAutoExclusive(False) - - self.gridLayout_4.addWidget(self.pb_con_line, 0, 1, 1, 1) - - self.pb_con_ptpt = QPushButton(self.groupBox_3) - self.pb_con_ptpt.setObjectName(u"pb_con_ptpt") - self.pb_con_ptpt.setCheckable(True) - self.pb_con_ptpt.setAutoExclusive(False) - - self.gridLayout_4.addWidget(self.pb_con_ptpt, 0, 0, 1, 1) - - self.pb_con_horiz = QPushButton(self.groupBox_3) - self.pb_con_horiz.setObjectName(u"pb_con_horiz") - self.pb_con_horiz.setCheckable(True) - self.pb_con_horiz.setAutoExclusive(False) - - self.gridLayout_4.addWidget(self.pb_con_horiz, 2, 0, 1, 1) - - self.pb_con_vert = QPushButton(self.groupBox_3) - self.pb_con_vert.setObjectName(u"pb_con_vert") - self.pb_con_vert.setCheckable(True) - self.pb_con_vert.setAutoExclusive(False) - - self.gridLayout_4.addWidget(self.pb_con_vert, 2, 1, 1, 1) - - self.pb_con_sym = QPushButton(self.groupBox_3) - self.pb_con_sym.setObjectName(u"pb_con_sym") - self.pb_con_sym.setCheckable(True) - self.pb_con_sym.setAutoExclusive(False) - - self.gridLayout_4.addWidget(self.pb_con_sym, 3, 1, 1, 1) - - self.pb_con_dist = QPushButton(self.groupBox_3) - self.pb_con_dist.setObjectName(u"pb_con_dist") - self.pb_con_dist.setCheckable(True) - self.pb_con_dist.setAutoExclusive(False) - self.pb_con_dist.setAutoRepeatDelay(297) - - self.gridLayout_4.addWidget(self.pb_con_dist, 3, 0, 1, 1) - - self.pb_con_mid = QPushButton(self.groupBox_3) - self.pb_con_mid.setObjectName(u"pb_con_mid") - self.pb_con_mid.setCheckable(True) - - self.gridLayout_4.addWidget(self.pb_con_mid, 1, 0, 1, 1) - - self.pb_con_perp = QPushButton(self.groupBox_3) - self.pb_con_perp.setObjectName(u"pb_con_perp") - self.pb_con_perp.setCheckable(True) - - self.gridLayout_4.addWidget(self.pb_con_perp, 1, 1, 1, 1) - - - self.gridLayout.addWidget(self.groupBox_3, 2, 0, 1, 1) - self.InputTab = QTabWidget(self.centralwidget) self.InputTab.setObjectName(u"InputTab") - sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) - sizePolicy1.setHorizontalStretch(0) - sizePolicy1.setVerticalStretch(0) - sizePolicy1.setHeightForWidth(self.InputTab.sizePolicy().hasHeightForWidth()) - self.InputTab.setSizePolicy(sizePolicy1) + sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.InputTab.sizePolicy().hasHeightForWidth()) + self.InputTab.setSizePolicy(sizePolicy) self.sketch_tab = QWidget() self.sketch_tab.setObjectName(u"sketch_tab") self.verticalLayout_4 = QVBoxLayout(self.sketch_tab) @@ -154,57 +87,26 @@ class Ui_fluencyCAD(object): self.InputTab.addTab(self.code_tab, "") - self.gridLayout.addWidget(self.InputTab, 0, 1, 7, 1) + self.gridLayout.addWidget(self.InputTab, 0, 1, 9, 1) - self.groupBox_11 = QGroupBox(self.centralwidget) - self.groupBox_11.setObjectName(u"groupBox_11") - sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) - sizePolicy2.setHorizontalStretch(0) - sizePolicy2.setVerticalStretch(0) - sizePolicy2.setHeightForWidth(self.groupBox_11.sizePolicy().hasHeightForWidth()) - self.groupBox_11.setSizePolicy(sizePolicy2) - self.groupBox_11.setMaximumSize(QSize(200, 16777215)) - self.verticalLayout_7 = QVBoxLayout(self.groupBox_11) - self.verticalLayout_7.setObjectName(u"verticalLayout_7") - self.verticalLayout_7.setContentsMargins(5, 5, 5, 5) - self.sketch_list = QListWidget(self.groupBox_11) - self.sketch_list.setObjectName(u"sketch_list") - sizePolicy3 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) - sizePolicy3.setHorizontalStretch(0) - sizePolicy3.setVerticalStretch(0) - sizePolicy3.setHeightForWidth(self.sketch_list.sizePolicy().hasHeightForWidth()) - self.sketch_list.setSizePolicy(sizePolicy3) - self.sketch_list.setSelectionRectVisible(True) + self.gl_box = QGroupBox(self.centralwidget) + self.gl_box.setObjectName(u"gl_box") + sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(4) + sizePolicy1.setHeightForWidth(self.gl_box.sizePolicy().hasHeightForWidth()) + self.gl_box.setSizePolicy(sizePolicy1) + font = QFont() + font.setPointSize(12) + self.gl_box.setFont(font) + self.horizontalLayout_4 = QHBoxLayout(self.gl_box) +#ifndef Q_OS_MAC + self.horizontalLayout_4.setSpacing(-1) +#endif + self.horizontalLayout_4.setObjectName(u"horizontalLayout_4") + self.horizontalLayout_4.setContentsMargins(12, -1, -1, -1) - self.verticalLayout_7.addWidget(self.sketch_list) - - self.groupBox_6 = QGroupBox(self.groupBox_11) - self.groupBox_6.setObjectName(u"groupBox_6") - sizePolicy.setHeightForWidth(self.groupBox_6.sizePolicy().hasHeightForWidth()) - self.groupBox_6.setSizePolicy(sizePolicy) - self.gridLayout_6 = QGridLayout(self.groupBox_6) - self.gridLayout_6.setObjectName(u"gridLayout_6") - self.gridLayout_6.setContentsMargins(2, 2, 2, 2) - self.pb_edt_sktch = QPushButton(self.groupBox_6) - self.pb_edt_sktch.setObjectName(u"pb_edt_sktch") - - self.gridLayout_6.addWidget(self.pb_edt_sktch, 1, 1, 1, 1) - - self.pb_nw_sktch = QPushButton(self.groupBox_6) - self.pb_nw_sktch.setObjectName(u"pb_nw_sktch") - - self.gridLayout_6.addWidget(self.pb_nw_sktch, 1, 0, 1, 1) - - self.pb_del_sketch = QPushButton(self.groupBox_6) - self.pb_del_sketch.setObjectName(u"pb_del_sketch") - - self.gridLayout_6.addWidget(self.pb_del_sketch, 1, 2, 1, 1) - - - self.verticalLayout_7.addWidget(self.groupBox_6) - - - self.gridLayout.addWidget(self.groupBox_11, 5, 0, 2, 1) + self.gridLayout.addWidget(self.gl_box, 0, 2, 9, 1) self.groupBox = QGroupBox(self.centralwidget) self.groupBox.setObjectName(u"groupBox") @@ -247,29 +149,13 @@ class Ui_fluencyCAD(object): self.compo_box.setObjectName(u"compo_box") self.compo_box.setMinimumSize(QSize(0, 50)) - self.gridLayout.addWidget(self.compo_box, 7, 1, 1, 2) - - self.gl_box = QGroupBox(self.centralwidget) - self.gl_box.setObjectName(u"gl_box") - sizePolicy4 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) - sizePolicy4.setHorizontalStretch(0) - sizePolicy4.setVerticalStretch(4) - sizePolicy4.setHeightForWidth(self.gl_box.sizePolicy().hasHeightForWidth()) - self.gl_box.setSizePolicy(sizePolicy4) - font = QFont() - font.setPointSize(12) - self.gl_box.setFont(font) - self.horizontalLayout_4 = QHBoxLayout(self.gl_box) -#ifndef Q_OS_MAC - self.horizontalLayout_4.setSpacing(-1) -#endif - self.horizontalLayout_4.setObjectName(u"horizontalLayout_4") - self.horizontalLayout_4.setContentsMargins(12, -1, -1, -1) - - self.gridLayout.addWidget(self.gl_box, 0, 2, 7, 1) + self.gridLayout.addWidget(self.compo_box, 9, 1, 1, 2) self.groupBox_10 = QGroupBox(self.centralwidget) self.groupBox_10.setObjectName(u"groupBox_10") + sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) + sizePolicy2.setHorizontalStretch(0) + sizePolicy2.setVerticalStretch(0) sizePolicy2.setHeightForWidth(self.groupBox_10.sizePolicy().hasHeightForWidth()) self.groupBox_10.setSizePolicy(sizePolicy2) self.groupBox_10.setMaximumSize(QSize(200, 16777215)) @@ -284,8 +170,11 @@ class Ui_fluencyCAD(object): self.groupBox_8 = QGroupBox(self.groupBox_10) self.groupBox_8.setObjectName(u"groupBox_8") - sizePolicy.setHeightForWidth(self.groupBox_8.sizePolicy().hasHeightForWidth()) - self.groupBox_8.setSizePolicy(sizePolicy) + sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + sizePolicy3.setHorizontalStretch(0) + sizePolicy3.setVerticalStretch(0) + sizePolicy3.setHeightForWidth(self.groupBox_8.sizePolicy().hasHeightForWidth()) + self.groupBox_8.setSizePolicy(sizePolicy3) self.groupBox_8.setMaximumSize(QSize(200, 16777215)) self.gridLayout_8 = QGridLayout(self.groupBox_8) self.gridLayout_8.setObjectName(u"gridLayout_8") @@ -309,45 +198,114 @@ class Ui_fluencyCAD(object): self.verticalLayout_6.addWidget(self.groupBox_8) - self.gridLayout.addWidget(self.groupBox_10, 5, 3, 2, 1) + self.gridLayout.addWidget(self.groupBox_10, 7, 3, 2, 1) - self.groupBox_2 = QGroupBox(self.centralwidget) - self.groupBox_2.setObjectName(u"groupBox_2") - sizePolicy.setHeightForWidth(self.groupBox_2.sizePolicy().hasHeightForWidth()) - self.groupBox_2.setSizePolicy(sizePolicy) - self.groupBox_2.setMaximumSize(QSize(200, 16777215)) - self.gridLayout_2 = QGridLayout(self.groupBox_2) - self.gridLayout_2.setObjectName(u"gridLayout_2") - self.pb_rectool = QPushButton(self.groupBox_2) - self.pb_rectool.setObjectName(u"pb_rectool") - self.pb_rectool.setCheckable(True) - self.pb_rectool.setAutoExclusive(False) + self.groupBox_11 = QGroupBox(self.centralwidget) + self.groupBox_11.setObjectName(u"groupBox_11") + sizePolicy2.setHeightForWidth(self.groupBox_11.sizePolicy().hasHeightForWidth()) + self.groupBox_11.setSizePolicy(sizePolicy2) + self.groupBox_11.setMaximumSize(QSize(200, 16777215)) + self.verticalLayout_7 = QVBoxLayout(self.groupBox_11) + self.verticalLayout_7.setObjectName(u"verticalLayout_7") + self.verticalLayout_7.setContentsMargins(5, 5, 5, 5) + self.sketch_list = QListWidget(self.groupBox_11) + self.sketch_list.setObjectName(u"sketch_list") + sizePolicy4 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) + sizePolicy4.setHorizontalStretch(0) + sizePolicy4.setVerticalStretch(0) + sizePolicy4.setHeightForWidth(self.sketch_list.sizePolicy().hasHeightForWidth()) + self.sketch_list.setSizePolicy(sizePolicy4) + self.sketch_list.setSelectionRectVisible(True) - self.gridLayout_2.addWidget(self.pb_rectool, 1, 1, 1, 1, Qt.AlignTop) + self.verticalLayout_7.addWidget(self.sketch_list) - self.pb_circtool = QPushButton(self.groupBox_2) - self.pb_circtool.setObjectName(u"pb_circtool") - self.pb_circtool.setCheckable(True) - self.pb_circtool.setAutoExclusive(False) + self.groupBox_6 = QGroupBox(self.groupBox_11) + self.groupBox_6.setObjectName(u"groupBox_6") + sizePolicy3.setHeightForWidth(self.groupBox_6.sizePolicy().hasHeightForWidth()) + self.groupBox_6.setSizePolicy(sizePolicy3) + self.gridLayout_6 = QGridLayout(self.groupBox_6) + self.gridLayout_6.setObjectName(u"gridLayout_6") + self.gridLayout_6.setContentsMargins(2, 2, 2, 2) + self.pb_edt_sktch = QPushButton(self.groupBox_6) + self.pb_edt_sktch.setObjectName(u"pb_edt_sktch") - self.gridLayout_2.addWidget(self.pb_circtool, 2, 0, 1, 1, Qt.AlignTop) + self.gridLayout_6.addWidget(self.pb_edt_sktch, 1, 1, 1, 1) - self.pb_slotool = QPushButton(self.groupBox_2) - self.pb_slotool.setObjectName(u"pb_slotool") - self.pb_slotool.setCheckable(True) - self.pb_slotool.setAutoExclusive(False) + self.pb_nw_sktch = QPushButton(self.groupBox_6) + self.pb_nw_sktch.setObjectName(u"pb_nw_sktch") - self.gridLayout_2.addWidget(self.pb_slotool, 2, 1, 1, 1, Qt.AlignTop) + self.gridLayout_6.addWidget(self.pb_nw_sktch, 1, 0, 1, 1) - self.pb_linetool = QPushButton(self.groupBox_2) - self.pb_linetool.setObjectName(u"pb_linetool") - self.pb_linetool.setCheckable(True) - self.pb_linetool.setAutoExclusive(False) + self.pb_del_sketch = QPushButton(self.groupBox_6) + self.pb_del_sketch.setObjectName(u"pb_del_sketch") - self.gridLayout_2.addWidget(self.pb_linetool, 1, 0, 1, 1) + self.gridLayout_6.addWidget(self.pb_del_sketch, 1, 2, 1, 1) - self.gridLayout.addWidget(self.groupBox_2, 1, 0, 1, 1) + self.verticalLayout_7.addWidget(self.groupBox_6) + + + self.gridLayout.addWidget(self.groupBox_11, 6, 0, 3, 1) + + self.assmbly_box = QGroupBox(self.centralwidget) + self.assmbly_box.setObjectName(u"assmbly_box") + self.assmbly_box.setMinimumSize(QSize(0, 50)) + self.gridLayout_10 = QGridLayout(self.assmbly_box) + self.gridLayout_10.setObjectName(u"gridLayout_10") + self.pushButton_3 = QPushButton(self.assmbly_box) + self.pushButton_3.setObjectName(u"pushButton_3") + self.pushButton_3.setMinimumSize(QSize(50, 50)) + self.pushButton_3.setMaximumSize(QSize(50, 50)) + + self.gridLayout_10.addWidget(self.pushButton_3, 0, 0, 1, 1) + + self.pushButton_6 = QPushButton(self.assmbly_box) + self.pushButton_6.setObjectName(u"pushButton_6") + self.pushButton_6.setMinimumSize(QSize(50, 50)) + self.pushButton_6.setMaximumSize(QSize(50, 50)) + + self.gridLayout_10.addWidget(self.pushButton_6, 0, 1, 1, 1) + + + self.gridLayout.addWidget(self.assmbly_box, 9, 3, 1, 1) + + self.groupBox_4 = QGroupBox(self.centralwidget) + self.groupBox_4.setObjectName(u"groupBox_4") + self.verticalLayout_2 = QVBoxLayout(self.groupBox_4) + self.verticalLayout_2.setObjectName(u"verticalLayout_2") + self.pushButton_2 = QPushButton(self.groupBox_4) + self.pushButton_2.setObjectName(u"pushButton_2") + + self.verticalLayout_2.addWidget(self.pushButton_2) + + + self.gridLayout.addWidget(self.groupBox_4, 6, 3, 1, 1) + + self.compo_tool_box = QGroupBox(self.centralwidget) + self.compo_tool_box.setObjectName(u"compo_tool_box") + self.compo_tool_box.setMinimumSize(QSize(0, 50)) + self.gridLayout_9 = QGridLayout(self.compo_tool_box) + self.gridLayout_9.setObjectName(u"gridLayout_9") + self.new_compo = QPushButton(self.compo_tool_box) + self.new_compo.setObjectName(u"new_compo") + self.new_compo.setMinimumSize(QSize(50, 50)) + self.new_compo.setMaximumSize(QSize(50, 50)) + + self.gridLayout_9.addWidget(self.new_compo, 0, 0, 1, 1) + + self.del_compo = QPushButton(self.compo_tool_box) + self.del_compo.setObjectName(u"del_compo") + self.del_compo.setEnabled(True) + sizePolicy3.setHeightForWidth(self.del_compo.sizePolicy().hasHeightForWidth()) + self.del_compo.setSizePolicy(sizePolicy3) + self.del_compo.setMinimumSize(QSize(50, 50)) + self.del_compo.setMaximumSize(QSize(50, 50)) + self.del_compo.setLayoutDirection(Qt.LeftToRight) + + self.gridLayout_9.addWidget(self.del_compo, 0, 1, 1, 1) + + + self.gridLayout.addWidget(self.compo_tool_box, 9, 0, 1, 1) self.groupBox_9 = QGroupBox(self.centralwidget) self.groupBox_9.setObjectName(u"groupBox_9") @@ -375,67 +333,231 @@ class Ui_fluencyCAD(object): self.gridLayout_7.addWidget(self.pb_move_wp, 1, 1, 1, 1) - self.gridLayout.addWidget(self.groupBox_9, 0, 0, 1, 1, Qt.AlignTop) + self.gridLayout.addWidget(self.groupBox_9, 0, 0, 1, 1) - self.compo_tool_box = QGroupBox(self.centralwidget) - self.compo_tool_box.setObjectName(u"compo_tool_box") - self.compo_tool_box.setMinimumSize(QSize(0, 50)) - self.gridLayout_9 = QGridLayout(self.compo_tool_box) - self.gridLayout_9.setObjectName(u"gridLayout_9") - self.new_compo = QPushButton(self.compo_tool_box) - self.new_compo.setObjectName(u"new_compo") - self.new_compo.setMinimumSize(QSize(50, 50)) - self.new_compo.setMaximumSize(QSize(50, 50)) + self.groupBox_2 = QGroupBox(self.centralwidget) + self.groupBox_2.setObjectName(u"groupBox_2") + sizePolicy3.setHeightForWidth(self.groupBox_2.sizePolicy().hasHeightForWidth()) + self.groupBox_2.setSizePolicy(sizePolicy3) + self.groupBox_2.setMaximumSize(QSize(200, 16777215)) + self.gridLayout_2 = QGridLayout(self.groupBox_2) + self.gridLayout_2.setObjectName(u"gridLayout_2") + self.gridLayout_2.setContentsMargins(10, -1, -1, -1) + self.line = QFrame(self.groupBox_2) + self.line.setObjectName(u"line") + self.line.setFrameShape(QFrame.HLine) + self.line.setFrameShadow(QFrame.Sunken) - self.gridLayout_9.addWidget(self.new_compo, 0, 0, 1, 1) + self.gridLayout_2.addWidget(self.line, 4, 0, 1, 2) - self.del_compo = QPushButton(self.compo_tool_box) - self.del_compo.setObjectName(u"del_compo") - self.del_compo.setEnabled(True) - sizePolicy.setHeightForWidth(self.del_compo.sizePolicy().hasHeightForWidth()) - self.del_compo.setSizePolicy(sizePolicy) - self.del_compo.setMinimumSize(QSize(50, 50)) - self.del_compo.setMaximumSize(QSize(50, 50)) - self.del_compo.setLayoutDirection(Qt.LeftToRight) + self.pb_circtool = QPushButton(self.groupBox_2) + self.pb_circtool.setObjectName(u"pb_circtool") + self.pb_circtool.setCheckable(True) + self.pb_circtool.setAutoExclusive(False) - self.gridLayout_9.addWidget(self.del_compo, 0, 1, 1, 1) + self.gridLayout_2.addWidget(self.pb_circtool, 2, 0, 1, 1, Qt.AlignTop) + + self.pb_slotool = QPushButton(self.groupBox_2) + self.pb_slotool.setObjectName(u"pb_slotool") + self.pb_slotool.setCheckable(True) + self.pb_slotool.setAutoExclusive(False) + self.pb_slotool.setAutoRepeatInterval(98) + + self.gridLayout_2.addWidget(self.pb_slotool, 2, 1, 1, 1, Qt.AlignTop) + + self.pb_linetool = QPushButton(self.groupBox_2) + self.pb_linetool.setObjectName(u"pb_linetool") + self.pb_linetool.setCheckable(True) + self.pb_linetool.setAutoExclusive(False) + + self.gridLayout_2.addWidget(self.pb_linetool, 1, 0, 1, 1) + + self.pb_rectool = QPushButton(self.groupBox_2) + self.pb_rectool.setObjectName(u"pb_rectool") + self.pb_rectool.setCheckable(True) + self.pb_rectool.setAutoExclusive(False) + + self.gridLayout_2.addWidget(self.pb_rectool, 1, 1, 1, 1, Qt.AlignTop) + + self.pb_enable_construct = QPushButton(self.groupBox_2) + self.pb_enable_construct.setObjectName(u"pb_enable_construct") + self.pb_enable_construct.setCheckable(True) + + self.gridLayout_2.addWidget(self.pb_enable_construct, 5, 0, 1, 1) + + self.pb_enable_snap = QPushButton(self.groupBox_2) + self.pb_enable_snap.setObjectName(u"pb_enable_snap") + self.pb_enable_snap.setCheckable(True) + self.pb_enable_snap.setChecked(True) + + self.gridLayout_2.addWidget(self.pb_enable_snap, 5, 1, 1, 1) - self.gridLayout.addWidget(self.compo_tool_box, 7, 0, 1, 1) + self.gridLayout.addWidget(self.groupBox_2, 1, 0, 1, 1) - self.groupBox_4 = QGroupBox(self.centralwidget) - self.groupBox_4.setObjectName(u"groupBox_4") - self.verticalLayout_2 = QVBoxLayout(self.groupBox_4) - self.verticalLayout_2.setObjectName(u"verticalLayout_2") - self.pushButton_2 = QPushButton(self.groupBox_4) - self.pushButton_2.setObjectName(u"pushButton_2") + self.groupBox_3 = QGroupBox(self.centralwidget) + self.groupBox_3.setObjectName(u"groupBox_3") + sizePolicy3.setHeightForWidth(self.groupBox_3.sizePolicy().hasHeightForWidth()) + self.groupBox_3.setSizePolicy(sizePolicy3) + self.groupBox_3.setMaximumSize(QSize(200, 16777213)) + self.gridLayout_4 = QGridLayout(self.groupBox_3) + self.gridLayout_4.setObjectName(u"gridLayout_4") + self.pb_con_sym = QPushButton(self.groupBox_3) + self.pb_con_sym.setObjectName(u"pb_con_sym") + self.pb_con_sym.setCheckable(True) + self.pb_con_sym.setAutoExclusive(False) - self.verticalLayout_2.addWidget(self.pushButton_2) + self.gridLayout_4.addWidget(self.pb_con_sym, 3, 1, 1, 1) + + self.pb_con_vert = QPushButton(self.groupBox_3) + self.pb_con_vert.setObjectName(u"pb_con_vert") + self.pb_con_vert.setCheckable(True) + self.pb_con_vert.setAutoExclusive(False) + + self.gridLayout_4.addWidget(self.pb_con_vert, 2, 1, 1, 1) + + self.pb_con_perp = QPushButton(self.groupBox_3) + self.pb_con_perp.setObjectName(u"pb_con_perp") + self.pb_con_perp.setCheckable(True) + + self.gridLayout_4.addWidget(self.pb_con_perp, 1, 1, 1, 1) + + self.pb_con_horiz = QPushButton(self.groupBox_3) + self.pb_con_horiz.setObjectName(u"pb_con_horiz") + self.pb_con_horiz.setCheckable(True) + self.pb_con_horiz.setAutoExclusive(False) + + self.gridLayout_4.addWidget(self.pb_con_horiz, 2, 0, 1, 1) + + self.pb_con_ptpt = QPushButton(self.groupBox_3) + self.pb_con_ptpt.setObjectName(u"pb_con_ptpt") + self.pb_con_ptpt.setCheckable(True) + self.pb_con_ptpt.setAutoExclusive(False) + + self.gridLayout_4.addWidget(self.pb_con_ptpt, 0, 0, 1, 1) + + self.pb_con_line = QPushButton(self.groupBox_3) + self.pb_con_line.setObjectName(u"pb_con_line") + self.pb_con_line.setCheckable(True) + self.pb_con_line.setAutoExclusive(False) + + self.gridLayout_4.addWidget(self.pb_con_line, 0, 1, 1, 1) + + self.pb_con_dist = QPushButton(self.groupBox_3) + self.pb_con_dist.setObjectName(u"pb_con_dist") + self.pb_con_dist.setCheckable(True) + self.pb_con_dist.setAutoExclusive(False) + self.pb_con_dist.setAutoRepeatDelay(297) + + self.gridLayout_4.addWidget(self.pb_con_dist, 3, 0, 1, 1) + + self.pb_con_mid = QPushButton(self.groupBox_3) + self.pb_con_mid.setObjectName(u"pb_con_mid") + self.pb_con_mid.setCheckable(True) + + self.gridLayout_4.addWidget(self.pb_con_mid, 1, 0, 1, 1) - self.gridLayout.addWidget(self.groupBox_4, 4, 3, 1, 1) + self.gridLayout.addWidget(self.groupBox_3, 2, 0, 1, 1) - self.assmbly_box = QGroupBox(self.centralwidget) - self.assmbly_box.setObjectName(u"assmbly_box") - self.assmbly_box.setMinimumSize(QSize(0, 50)) - self.gridLayout_10 = QGridLayout(self.assmbly_box) - self.gridLayout_10.setObjectName(u"gridLayout_10") - self.pushButton_3 = QPushButton(self.assmbly_box) - self.pushButton_3.setObjectName(u"pushButton_3") - self.pushButton_3.setMinimumSize(QSize(50, 50)) - self.pushButton_3.setMaximumSize(QSize(50, 50)) + self.tabWidget = QTabWidget(self.centralwidget) + self.tabWidget.setObjectName(u"tabWidget") + sizePolicy5 = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Expanding) + sizePolicy5.setHorizontalStretch(0) + sizePolicy5.setVerticalStretch(0) + sizePolicy5.setHeightForWidth(self.tabWidget.sizePolicy().hasHeightForWidth()) + self.tabWidget.setSizePolicy(sizePolicy5) + self.tabWidget.setMaximumSize(QSize(200, 16777215)) + self.tabWidget.setTabPosition(QTabWidget.South) + self.widget = QWidget() + self.widget.setObjectName(u"widget") + self.verticalLayout_3 = QVBoxLayout(self.widget) + self.verticalLayout_3.setObjectName(u"verticalLayout_3") + self.groupBox_5 = QGroupBox(self.widget) + self.groupBox_5.setObjectName(u"groupBox_5") + sizePolicy6 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Preferred) + sizePolicy6.setHorizontalStretch(0) + sizePolicy6.setVerticalStretch(0) + sizePolicy6.setHeightForWidth(self.groupBox_5.sizePolicy().hasHeightForWidth()) + self.groupBox_5.setSizePolicy(sizePolicy6) + self.gridLayout_11 = QGridLayout(self.groupBox_5) + self.gridLayout_11.setObjectName(u"gridLayout_11") + self.gridLayout_11.setContentsMargins(2, 2, 2, 2) + self.label = QLabel(self.groupBox_5) + self.label.setObjectName(u"label") - self.gridLayout_10.addWidget(self.pushButton_3, 0, 0, 1, 1) + self.gridLayout_11.addWidget(self.label, 5, 0, 1, 1) - self.pushButton_6 = QPushButton(self.assmbly_box) - self.pushButton_6.setObjectName(u"pushButton_6") - self.pushButton_6.setMinimumSize(QSize(50, 50)) - self.pushButton_6.setMaximumSize(QSize(50, 50)) + self.pb_snap_vert = QPushButton(self.groupBox_5) + self.pb_snap_vert.setObjectName(u"pb_snap_vert") + self.pb_snap_vert.setCheckable(True) - self.gridLayout_10.addWidget(self.pushButton_6, 0, 1, 1, 1) + self.gridLayout_11.addWidget(self.pb_snap_vert, 2, 1, 1, 1) + + self.line_2 = QFrame(self.groupBox_5) + self.line_2.setObjectName(u"line_2") + self.line_2.setFrameShape(QFrame.HLine) + self.line_2.setFrameShadow(QFrame.Sunken) + + self.gridLayout_11.addWidget(self.line_2, 4, 0, 1, 2) + + self.label_2 = QLabel(self.groupBox_5) + self.label_2.setObjectName(u"label_2") + + self.gridLayout_11.addWidget(self.label_2, 5, 1, 1, 1) + + self.spinbox_snap_distance = QSpinBox(self.groupBox_5) + self.spinbox_snap_distance.setObjectName(u"spinbox_snap_distance") + self.spinbox_snap_distance.setMaximum(30) + self.spinbox_snap_distance.setValue(10) + + self.gridLayout_11.addWidget(self.spinbox_snap_distance, 6, 0, 1, 1) + + self.pushButton_7 = QPushButton(self.groupBox_5) + self.pushButton_7.setObjectName(u"pushButton_7") + self.pushButton_7.setCheckable(True) + + self.gridLayout_11.addWidget(self.pushButton_7, 3, 0, 1, 1) + + self.pb_snap_horiz = QPushButton(self.groupBox_5) + self.pb_snap_horiz.setObjectName(u"pb_snap_horiz") + self.pb_snap_horiz.setCheckable(True) + + self.gridLayout_11.addWidget(self.pb_snap_horiz, 2, 0, 1, 1) + + self.spinbox_angle_steps = QSpinBox(self.groupBox_5) + self.spinbox_angle_steps.setObjectName(u"spinbox_angle_steps") + self.spinbox_angle_steps.setMaximum(180) + self.spinbox_angle_steps.setValue(15) + + self.gridLayout_11.addWidget(self.spinbox_angle_steps, 6, 1, 1, 1) + + self.pushButton_8 = QPushButton(self.groupBox_5) + self.pushButton_8.setObjectName(u"pushButton_8") + + self.gridLayout_11.addWidget(self.pushButton_8, 0, 0, 1, 1) + + self.pb_snap_midp = QPushButton(self.groupBox_5) + self.pb_snap_midp.setObjectName(u"pb_snap_midp") + self.pb_snap_midp.setCheckable(True) + + self.gridLayout_11.addWidget(self.pb_snap_midp, 0, 1, 1, 1) + + self.pb_snap_angle = QPushButton(self.groupBox_5) + self.pb_snap_angle.setObjectName(u"pb_snap_angle") + self.pb_snap_angle.setCheckable(True) + + self.gridLayout_11.addWidget(self.pb_snap_angle, 3, 1, 1, 1) - self.gridLayout.addWidget(self.assmbly_box, 7, 3, 1, 1) + self.verticalLayout_3.addWidget(self.groupBox_5) + + self.tabWidget.addTab(self.widget, "") + self.widget1 = QWidget() + self.widget1.setObjectName(u"widget1") + self.tabWidget.addTab(self.widget1, "") + + self.gridLayout.addWidget(self.tabWidget, 3, 0, 1, 1) fluencyCAD.setCentralWidget(self.centralwidget) self.menubar = QMenuBar(fluencyCAD) @@ -460,6 +582,7 @@ class Ui_fluencyCAD(object): self.retranslateUi(fluencyCAD) self.InputTab.setCurrentIndex(0) + self.tabWidget.setCurrentIndex(1) QMetaObject.connectSlotsByName(fluencyCAD) @@ -470,36 +593,6 @@ class Ui_fluencyCAD(object): self.actionNew_Project.setText(QCoreApplication.translate("fluencyCAD", u"New", None)) self.actionLoad_Project.setText(QCoreApplication.translate("fluencyCAD", u"Load", None)) self.actionRecent.setText(QCoreApplication.translate("fluencyCAD", u"Recent", None)) - self.groupBox_3.setTitle(QCoreApplication.translate("fluencyCAD", u"Constrain", None)) -#if QT_CONFIG(tooltip) - self.pb_con_line.setToolTip(QCoreApplication.translate("fluencyCAD", u"Point to Line Constrain", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_line.setText(QCoreApplication.translate("fluencyCAD", u"Pt_Lne", None)) -#if QT_CONFIG(tooltip) - self.pb_con_ptpt.setToolTip(QCoreApplication.translate("fluencyCAD", u"Poin to Point Constrain", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_ptpt.setText(QCoreApplication.translate("fluencyCAD", u"Pt_Pt", None)) -#if QT_CONFIG(tooltip) - self.pb_con_horiz.setToolTip(QCoreApplication.translate("fluencyCAD", u"Horizontal Constrain ", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_horiz.setText(QCoreApplication.translate("fluencyCAD", u"Horiz", None)) -#if QT_CONFIG(tooltip) - self.pb_con_vert.setToolTip(QCoreApplication.translate("fluencyCAD", u"Vertical Constrain", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_vert.setText(QCoreApplication.translate("fluencyCAD", u"Vert", None)) - self.pb_con_sym.setText(QCoreApplication.translate("fluencyCAD", u"Symetrc", None)) -#if QT_CONFIG(tooltip) - self.pb_con_dist.setToolTip(QCoreApplication.translate("fluencyCAD", u"Dimension of Line of Distance from Point to Line", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_dist.setText(QCoreApplication.translate("fluencyCAD", u"Distnce", None)) -#if QT_CONFIG(tooltip) - self.pb_con_mid.setToolTip(QCoreApplication.translate("fluencyCAD", u"Point to Middle Point Constrain", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_mid.setText(QCoreApplication.translate("fluencyCAD", u"Pt_Mid_L", None)) -#if QT_CONFIG(tooltip) - self.pb_con_perp.setToolTip(QCoreApplication.translate("fluencyCAD", u"Constrain Line perpendicular to another line.", None)) -#endif // QT_CONFIG(tooltip) - self.pb_con_perp.setText(QCoreApplication.translate("fluencyCAD", u"Perp_Lne", None)) self.InputTab.setTabText(self.InputTab.indexOf(self.sketch_tab), QCoreApplication.translate("fluencyCAD", u"Sketch", None)) self.groupBox_7.setTitle(QCoreApplication.translate("fluencyCAD", u"Executive", None)) self.pushButton_5.setText(QCoreApplication.translate("fluencyCAD", u"Load Code", None)) @@ -507,11 +600,7 @@ class Ui_fluencyCAD(object): self.pb_apply_code.setText(QCoreApplication.translate("fluencyCAD", u"Apply Code", None)) self.pushButton.setText(QCoreApplication.translate("fluencyCAD", u"Delete Code", None)) self.InputTab.setTabText(self.InputTab.indexOf(self.code_tab), QCoreApplication.translate("fluencyCAD", u"Code", None)) - self.groupBox_11.setTitle(QCoreApplication.translate("fluencyCAD", u"Sketch", None)) - self.groupBox_6.setTitle(QCoreApplication.translate("fluencyCAD", u"Tools", None)) - self.pb_edt_sktch.setText(QCoreApplication.translate("fluencyCAD", u"Edt", None)) - self.pb_nw_sktch.setText(QCoreApplication.translate("fluencyCAD", u"Add", None)) - self.pb_del_sketch.setText(QCoreApplication.translate("fluencyCAD", u"Del", None)) + self.gl_box.setTitle(QCoreApplication.translate("fluencyCAD", u"Model Viewer", None)) self.groupBox.setTitle(QCoreApplication.translate("fluencyCAD", u"Modify", None)) self.pb_revop.setText(QCoreApplication.translate("fluencyCAD", u"Rev", None)) self.pb_extrdop.setText(QCoreApplication.translate("fluencyCAD", u"Extrd", None)) @@ -520,23 +609,24 @@ class Ui_fluencyCAD(object): self.pb_combop.setText(QCoreApplication.translate("fluencyCAD", u"Comb", None)) self.pb_moveop.setText(QCoreApplication.translate("fluencyCAD", u"Mve", None)) self.compo_box.setTitle(QCoreApplication.translate("fluencyCAD", u"Components", None)) - self.gl_box.setTitle(QCoreApplication.translate("fluencyCAD", u"Model Viewer", None)) self.groupBox_10.setTitle(QCoreApplication.translate("fluencyCAD", u"Bodys / Operations", None)) self.groupBox_8.setTitle(QCoreApplication.translate("fluencyCAD", u"Tools", None)) self.pb_del_body.setText(QCoreApplication.translate("fluencyCAD", u"Del", None)) self.pb_update_body.setText(QCoreApplication.translate("fluencyCAD", u"Upd", None)) self.pb_edt_sktch_3.setText(QCoreApplication.translate("fluencyCAD", u"Nothing", None)) - self.groupBox_2.setTitle(QCoreApplication.translate("fluencyCAD", u"Drawing", None)) - self.pb_rectool.setText(QCoreApplication.translate("fluencyCAD", u"Rctgl", None)) - self.pb_circtool.setText(QCoreApplication.translate("fluencyCAD", u"Circle", None)) - self.pb_slotool.setText(QCoreApplication.translate("fluencyCAD", u"Slot", None)) -#if QT_CONFIG(statustip) - self.pb_linetool.setStatusTip(QCoreApplication.translate("fluencyCAD", u"Line >Sorking Plane at 0, 0, 0", None)) @@ -566,14 +656,62 @@ class Ui_fluencyCAD(object): #if QT_CONFIG(shortcut) self.pb_move_wp.setShortcut(QCoreApplication.translate("fluencyCAD", u"M", None)) #endif // QT_CONFIG(shortcut) - self.compo_tool_box.setTitle(QCoreApplication.translate("fluencyCAD", u"Component Tools", None)) - self.new_compo.setText(QCoreApplication.translate("fluencyCAD", u"New", None)) - self.del_compo.setText(QCoreApplication.translate("fluencyCAD", u"Del", None)) - self.groupBox_4.setTitle(QCoreApplication.translate("fluencyCAD", u"Export", None)) - self.pushButton_2.setText(QCoreApplication.translate("fluencyCAD", u"STL", None)) - self.assmbly_box.setTitle(QCoreApplication.translate("fluencyCAD", u"Assembly Tools", None)) - self.pushButton_3.setText(QCoreApplication.translate("fluencyCAD", u"+ Cnct", None)) - self.pushButton_6.setText(QCoreApplication.translate("fluencyCAD", u"- Cnct", None)) + self.groupBox_2.setTitle(QCoreApplication.translate("fluencyCAD", u"Drawing", None)) + self.pb_circtool.setText(QCoreApplication.translate("fluencyCAD", u"Circle", None)) + self.pb_slotool.setText(QCoreApplication.translate("fluencyCAD", u"Slot", None)) +#if QT_CONFIG(statustip) + self.pb_linetool.setStatusTip(QCoreApplication.translate("fluencyCAD", u"Line >S0 0 2192 - 1073 + 1109 @@ -15,150 +15,7 @@ - - - - - 0 - 0 - - - - - 200 - 16777213 - - - - Constrain - - - - - - Point to Line Constrain - - - Pt_Lne - - - true - - - false - - - - - - - Poin to Point Constrain - - - Pt_Pt - - - true - - - false - - - - - - - Horizontal Constrain - - - Horiz - - - true - - - false - - - - - - - Vertical Constrain - - - Vert - - - true - - - false - - - - - - - Symetrc - - - true - - - false - - - - - - - Dimension of Line of Distance from Point to Line - - - Distnce - - - true - - - false - - - 297 - - - - - - - Point to Middle Point Constrain - - - Pt_Mid_L - - - true - - - - - - - Constrain Line perpendicular to another line. - - - Perp_Lne - - - true - - - - - - - + @@ -224,97 +81,29 @@ - - + + - + 0 - 0 + 4 - - - 200 - 16777215 - + + + 12 + - Sketch + Model Viewer - + + + -1 + - 5 + 12 - - 5 - - - 5 - - - 5 - - - - - - 0 - 0 - - - - true - - - - - - - - 0 - 0 - - - - Tools - - - - 2 - - - 2 - - - 2 - - - 2 - - - - - Edt - - - - - - - Add - - - - - - - Del - - - - - - @@ -369,7 +158,7 @@ - + @@ -382,33 +171,7 @@ - - - - - 0 - 4 - - - - - 12 - - - - Model Viewer - - - - -1 - - - 12 - - - - - + @@ -502,10 +265,10 @@ - - + + - + 0 0 @@ -517,71 +280,220 @@ - Drawing + Sketch - - - - - Rctgl + + + 5 + + + 5 + + + 5 + + + 5 + + + + + + 0 + 0 + - + true - - false - - - + + + + + 0 + 0 + + + + Tools + + + + 2 + + + 2 + + + 2 + + + 2 + + + + + Edt + + + + + + + Add + + + + + + + Del + + + + + + + + + + + + + + 0 + 50 + + + + Assembly Tools + + + + + + + 50 + 50 + + + + + 50 + 50 + + - Circle - - - true - - - false + + Cnct - - - - Slot + + + + + 50 + 50 + - - true - - - false - - - - - - - Line >S<egment + + + 50 + 50 + - Line - - - S - - - true - - - false + - Cnct - + + + + Export + + + + + + STL + + + + + + + + + + + 0 + 50 + + + + Component Tools + + + + + + + 50 + 50 + + + + + 50 + 50 + + + + New + + + + + + + true + + + + 0 + 0 + + + + + 50 + 50 + + + + + 50 + 50 + + + + Qt::LeftToRight + + + Del + + + + + + + @@ -648,140 +560,429 @@ - - - + + + + + 0 + 0 + + + - 0 - 50 + 200 + 16777215 - Component Tools + Drawing - - - - - - 50 - 50 - - - - - 50 - 50 - - - - New + + + 10 + + + + + Qt::Horizontal - - - + + + + Circle + + true - - - 0 - 0 - + + false - - - 50 - 50 - + + + + + + Slot - - - 50 - 50 - + + true - - Qt::LeftToRight + + false + + + 98 + + + + + + + Line >S<egment - Del + Line + + + S + + + true + + + false + + + + + + + Rctgl + + + true + + + false + + + + + + + Cstrct + + + true + + + + + + + Snap + + + true + + + true - - - - Export + + + + + 0 + 0 + - - - - - STL - - - - - - - - - + - 0 - 50 + 200 + 16777213 - Assembly Tools + Constrain - - - - - - 50 - 50 - + + + + + Symetrc - - - 50 - 50 - + + true + + + false + + + + + + + Vertical Constrain - + Cnct + Vert + + + true + + + false + + + + + + + Constrain Line perpendicular to another line. + + + Perp_Lne + + + true + + + + + + + Horizontal Constrain + + + Horiz + + + true + + + false + + + + + + + Poin to Point Constrain + + + Pt_Pt + + + true + + + false - - - - 50 - 50 - - - - - 50 - 50 - + + + Point to Line Constrain - - Cnct + Pt_Lne + + + true + + + false + + + + + + + Dimension of Line of Distance from Point to Line + + + Distnce + + + true + + + false + + + 297 + + + + + + + Point to Middle Point Constrain + + + Pt_Mid_L + + + true + + + + + 0 + 0 + + + + + 200 + 16777215 + + + + QTabWidget::South + + + 1 + + + + Setg 1 + + + + + + + 0 + 0 + + + + Snapping Points + + + + 2 + + + 2 + + + 2 + + + 2 + + + + + Snp Dst + + + + + + + Vert + + + true + + + + + + + Qt::Horizontal + + + + + + + Angl Stps + + + + + + + mm + + + 30 + + + 10 + + + + + + + Grid + + + true + + + + + + + Horiz + + + true + + + + + + + ° + + + 180 + + + 15 + + + + + + + Pnt + + + + + + + MidP + + + true + + + + + + + Angles + + + true + + + + + + + + + + + Setg 2 + + + +