Add Job Control Dialog

This commit is contained in:
jriegel 2013-07-14 21:14:38 +02:00
parent a7fbc02e6d
commit ca0f3155e4
4 changed files with 413 additions and 2 deletions

View File

@ -24,6 +24,7 @@ SET(MachDist_SRCS
Parameter.ui Parameter.ui
Material.ui Material.ui
Aligment.ui Aligment.ui
JobControl.ui
) )
SOURCE_GROUP("" FILES ${MachDist_SRCS}) SOURCE_GROUP("" FILES ${MachDist_SRCS})

View File

@ -163,7 +163,7 @@ class MachiningDistortionWorkbench ( Workbench ):
CmdList = ["MachiningDistortion_StartGUI","MachiningDistortion_StartPostprocess"] CmdList = ["MachiningDistortion_StartGUI","MachiningDistortion_StartPostprocess"]
self.appendToolbar("MachiningDistortionTools",CmdList) self.appendToolbar("MachiningDistortionTools",CmdList)
self.appendMenu("Machining Distortion",CmdList) self.appendMenu("Machining Distortion",CmdList)
CmdList2 = ["MachDist_Analysis","Separator","MachDist_Mesh","MachDist_Alignment","MachDist_Material","MachDist_Isostatic"] CmdList2 = ["MachDist_Analysis","Separator","MachDist_Mesh","MachDist_Alignment","MachDist_Material","MachDist_Isostatic","Separator","MachDist_JobControl"]
self.appendToolbar("MachiningDistortionTools2",CmdList2) self.appendToolbar("MachiningDistortionTools2",CmdList2)
self.appendMenu("Machining Distortion2",CmdList2) self.appendMenu("Machining Distortion2",CmdList2)

View File

@ -0,0 +1,356 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>JobControl</class>
<widget class="QWidget" name="JobControl">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>258</width>
<height>366</height>
</rect>
</property>
<property name="windowTitle">
<string>Job Control</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_24">
<property name="text">
<string>From</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="label_25">
<property name="text">
<string>To</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QLabel" name="label_26">
<property name="text">
<string>Intervall</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QSpinBox" name="spinBox_misalignment_x_from">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QSpinBox" name="spinBox_misalignment_x_to">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QLabel" name="label">
<property name="text">
<string>A</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QSpinBox" name="spinBox_misalignment_y_from">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QSpinBox" name="spinBox_misalignment_y_to">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QLabel" name="label_2">
<property name="text">
<string>B</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QSpinBox" name="spinBox_misalignment_z_from">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QSpinBox" name="spinBox_misalignment_z_to">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="3" column="3">
<widget class="QLabel" name="label_3">
<property name="text">
<string>C</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QSpinBox" name="spinBox_z_level_from">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QSpinBox" name="spinBox_z_level_to">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
</widget>
</item>
<item row="4" column="3">
<widget class="QLabel" name="label_27">
<property name="text">
<string>Z</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QSpinBox" name="spinBox_misalignment_x_intervall">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QSpinBox" name="spinBox_misalignment_y_intervall">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
<item row="3" column="2">
<widget class="QSpinBox" name="spinBox_misalignment_z_intervall">
<property name="minimumSize">
<size>
<width>60</width>
<height>20</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
<item row="4" column="2">
<widget class="QSpinBox" name="spinBox_z_level_intervall">
<property name="minimumSize">
<size>
<width>60</width>
<height>0</height>
</size>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="minimum">
<number>-99</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>Generate</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_2">
<property name="text">
<string>Delete</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QTableWidget" name="JobTable">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>240</width>
<height>120</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>640</width>
<height>16777215</height>
</size>
</property>
<property name="rowCount">
<number>0</number>
</property>
<property name="columnCount">
<number>2</number>
</property>
<attribute name="horizontalHeaderVisible">
<bool>false</bool>
</attribute>
<attribute name="horizontalHeaderVisible">
<bool>false</bool>
</attribute>
<column/>
<column/>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -23,10 +23,11 @@
import FreeCAD, Fem import FreeCAD, Fem
if FreeCAD.GuiUp: if FreeCAD.GuiUp:
import FreeCADGui import FreeCADGui,FemGui
from FreeCAD import Vector from FreeCAD import Vector
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from pivy import coin from pivy import coin
import PyQt4.uic as uic
__title__="Machine-Distortion Analysis managment" __title__="Machine-Distortion Analysis managment"
__author__ = "Juergen Riegel" __author__ = "Juergen Riegel"
@ -68,5 +69,58 @@ class _CommandAnalysis:
import FemGui import FemGui
return FreeCADGui.ActiveDocument != None and FemGui.getActiveAnalysis() == None return FreeCADGui.ActiveDocument != None and FemGui.getActiveAnalysis() == None
class _CommandJobControl:
"the MachDist JobControl command definition"
def GetResources(self):
return {'Pixmap' : 'MachDist_NewAnalysis',
'MenuText': QtCore.QT_TRANSLATE_NOOP("MachDist_JobControl","Machine-Distortion JobControl"),
'Accel': "A",
'ToolTip': QtCore.QT_TRANSLATE_NOOP("MachDist_Analysis","Open the JobControl dialog")}
def Activated(self):
taskd = _JobControlTaskPanel()
#taskd.obj = vobj.Object
taskd.update()
FreeCADGui.Control.showDialog(taskd)
def IsActive(self):
import FemGui
return FreeCADGui.ActiveDocument != None and FemGui.getActiveAnalysis() == None
class _JobControlTaskPanel:
'''The editmode TaskPanel for Material objects'''
def __init__(self):
# the panel has a tree widget that contains categories
# for the subcomponents, such as additions, subtractions.
# the categories are shown only if they are not empty.
form_class, base_class = uic.loadUiType(FreeCAD.getHomePath() + "Mod/Machining_Distortion/JobControl.ui")
#self.obj = object
self.formUi = form_class()
self.form = QtGui.QWidget()
self.formUi.setupUi(self.form)
#Connect Signals and Slots
#QtCore.QObject.connect(self.formUi.pushButton_FlipX, QtCore.SIGNAL("clicked()"), self.flipX)
self.update()
def getStandardButtons(self):
return int(QtGui.QDialogButtonBox.Close)
def update(self):
'fills the widgets'
return
def accept(self):
FreeCADGui.Control.closeDialog()
def reject(self):
FreeCADGui.Control.closeDialog()
FreeCADGui.addCommand('MachDist_Analysis',_CommandAnalysis()) FreeCADGui.addCommand('MachDist_Analysis',_CommandAnalysis())
FreeCADGui.addCommand('MachDist_JobControl',_CommandJobControl())