# -*- coding: utf-8 -*-
-# Copyright (C) 2013-2022 EDF R&D
+# Copyright (C) 2013-2022 CEA/DES, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
self.qpbMeshFile.clicked.connect(self.OnQpbMeshFileClicked)
self.qpbMeshFile.setToolTip("Select input DEM file")
self.qpbClose.clicked.connect(self.OnQpbCloseClicked)
- self.qcbDistributed.stateChanged[int].connect(self.OnqcbDistributedClicked)
- self.qlbXParts.setVisible(False)
- self.qlbYParts.setVisible(False)
- self.qlbZParts.setVisible(False)
- self.qsbXParts.setVisible(False)
- self.qsbYParts.setVisible(False)
- self.qsbZParts.setVisible(False)
+ self.qrbDist.clicked.connect(self.OnqrbDistClicked)
+ self.qrbPar.clicked.connect(self.OnqrbParClicked)
+ self.qrbSeq.clicked.connect(self.OnqrbSeqClicked)
self.SALOME_TMP_DIR = None
try:
self.qleTmpDir.setText(os.path.join('/tmp',getpass.getuser(),'top-ii-vol'))
except:
self.qleTmpDir.setText('/tmp')
- self.resize(800, 500)
self.outputMesh = ''
def OnQpbHelpClicked(self):
zPoints = self.qsbZPoints.value()
depth = self.qsbDepth.value()
nProcs = self.qsbNBprocs.value()
- if not self.qcbDistributed.isChecked():
+ if not self.qrbDist.isChecked():
if nProcs == 1:
shellCmd = "topIIvol_Mesher"
else:
pathlib.Path(self.SALOME_TMP_DIR).mkdir(parents=True, exist_ok=True)
self.outputMesh= os.path.join(self.SALOME_TMP_DIR, inputMesh.split('/').pop().replace('.xyz','.mesh'))
shellCmd+= " --out " + self.outputMesh
+ os.chdir(self.SALOME_TMP_DIR)
print("INFO: ", shellCmd)
myMonitorView=TopIIVolMeshMonitor(self, shellCmd)
- def OnqcbDistributedClicked(self):
- state = self.qcbDistributed.isChecked()
- self.qlbXParts.setVisible(state)
- self.qlbYParts.setVisible(state)
- self.qlbZParts.setVisible(state)
- self.qsbXParts.setVisible(state)
- self.qsbYParts.setVisible(state)
- self.qsbZParts.setVisible(state)
+ def OnqrbDistClicked(self):
+ state = self.qrbDist.isChecked()
+ self.qgbDist.setEnabled(state)
+ self.qsbNBprocs.setEnabled(state)
+ self.qlbNBprocs.setEnabled(state)
+ def OnqrbParClicked(self):
+ state = self.qrbPar.isChecked()
+ self.qgbDist.setEnabled(not state)
+ self.qsbNBprocs.setEnabled(state)
+ self.qlbNBprocs.setEnabled(state)
+
+ def OnqrbSeqClicked(self):
+ state = self.qrbSeq.isChecked()
+ if state:
+ self.qsbNBprocs.setValue(1)
+ self.qgbDist.setEnabled(not state)
+ self.qsbNBprocs.setEnabled(not state)
+ self.qlbNBprocs.setEnabled(not state)
+
def OnQpbCloseClicked(self):
self.close()
<rect>
<x>0</x>
<y>0</y>
- <width>780</width>
- <height>411</height>
+ <width>758</width>
+ <height>400</height>
</rect>
</property>
<property name="windowTitle">
- <string>Tetra Mesh from cloud of xyz points mesh generator</string>
+ <string>Tetrahedral mesh generator for DEM point-clouds</string>
</property>
- <widget class="QGroupBox" name="groupBox">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>10</y>
- <width>761</width>
- <height>101</height>
- </rect>
- </property>
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- </font>
- </property>
- <property name="title">
- <string>Input Mesh</string>
- </property>
- <widget class="QPushButton" name="qpbMeshFile">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>50</y>
- <width>151</width>
- <height>31</height>
- </rect>
- </property>
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- </font>
- </property>
- <property name="text">
- <string>DEM input file</string>
- </property>
- <property name="iconSize">
- <size>
- <width>18</width>
- <height>18</height>
- </size>
- </property>
- </widget>
- <widget class="QLineEdit" name="qleMeshFile">
- <property name="geometry">
- <rect>
- <x>170</x>
- <y>50</y>
- <width>531</width>
- <height>31</height>
- </rect>
- </property>
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- </font>
- </property>
- </widget>
- </widget>
- <widget class="QGroupBox" name="gbOptions">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>120</y>
- <width>761</width>
- <height>231</height>
- </rect>
- </property>
- <property name="title">
- <string>Options</string>
- </property>
- <widget class="QSpinBox" name="qsbXPoints">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>30</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>10</number>
- </property>
- </widget>
- <widget class="QLabel" name="qlXpoints">
- <property name="geometry">
- <rect>
- <x>80</x>
- <y>30</y>
- <width>201</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of points in X direction</string>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbYPoints">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>70</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>10</number>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbZPoints">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>110</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>10</number>
- </property>
- </widget>
- <widget class="QLabel" name="qlYpoints">
- <property name="geometry">
- <rect>
- <x>80</x>
- <y>70</y>
- <width>211</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of points in Y direction</string>
- </property>
- </widget>
- <widget class="QLabel" name="qlZpoints">
- <property name="geometry">
- <rect>
- <x>80</x>
- <y>110</y>
- <width>211</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of points in Z direction</string>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbDepth">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>150</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>-999999999</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>0</number>
- </property>
- </widget>
- <widget class="QLabel" name="qlDepth">
- <property name="geometry">
- <rect>
- <x>80</x>
- <y>150</y>
- <width>201</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text">
- <string>Depth in Z direction</string>
- </property>
- </widget>
- <widget class="QCheckBox" name="qcbDistributed">
- <property name="geometry">
- <rect>
- <x>630</x>
- <y>30</y>
- <width>91</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text">
- <string/>
- </property>
- </widget>
- <widget class="QLabel" name="qlbNbProcs">
- <property name="geometry">
- <rect>
- <x>370</x>
- <y>30</y>
- <width>151</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of processors</string>
- </property>
- </widget>
- <widget class="QLabel" name="qlDistributed">
- <property name="geometry">
- <rect>
- <x>660</x>
- <y>30</y>
- <width>101</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Distributed</string>
- </property>
- </widget>
- <widget class="QLabel" name="qlbXParts">
- <property name="geometry">
- <rect>
- <x>370</x>
- <y>70</y>
- <width>261</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of partitions in X direction</string>
- </property>
- </widget>
- <widget class="QLabel" name="qlbYParts">
- <property name="geometry">
- <rect>
- <x>370</x>
- <y>110</y>
- <width>251</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of partitions in Y direction</string>
- </property>
- </widget>
- <widget class="QLabel" name="qlbZParts">
- <property name="geometry">
- <rect>
- <x>370</x>
- <y>150</y>
- <width>251</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Number of partitions in Z direction</string>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbNBprocs">
- <property name="geometry">
- <rect>
- <x>300</x>
- <y>30</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>1</number>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbXParts">
- <property name="geometry">
- <rect>
- <x>300</x>
- <y>70</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>1</number>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbYParts">
- <property name="geometry">
- <rect>
- <x>300</x>
- <y>110</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>1</number>
- </property>
- </widget>
- <widget class="QSpinBox" name="qsbZParts">
- <property name="geometry">
- <rect>
- <x>300</x>
- <y>150</y>
- <width>62</width>
- <height>22</height>
- </rect>
- </property>
- <property name="minimum">
- <number>0</number>
- </property>
- <property name="maximum">
- <number>999999999</number>
- </property>
- <property name="value">
- <number>1</number>
- </property>
- </widget>
- <widget class="QLineEdit" name="qleTmpDir">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>200</y>
- <width>611</width>
- <height>23</height>
- </rect>
- </property>
- <property name="text">
- <string/>
- </property>
- </widget>
- <widget class="QLabel" name="qlTmpDir">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>180</y>
- <width>391</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Workspace</string>
- </property>
- </widget>
- <widget class="QCheckBox" name="qcbDisplayMesh">
- <property name="geometry">
- <rect>
- <x>630</x>
- <y>70</y>
- <width>91</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text">
- <string/>
- </property>
- </widget>
- <widget class="QLabel" name="qlDisplayMesh">
- <property name="geometry">
- <rect>
- <x>660</x>
- <y>70</y>
- <width>101</width>
- <height>16</height>
- </rect>
- </property>
- <property name="text">
- <string>Display mesh</string>
- </property>
- </widget>
- </widget>
- <widget class="QWidget" name="layoutWidget">
- <property name="geometry">
- <rect>
- <x>10</x>
- <y>370</y>
- <width>761</width>
- <height>27</height>
- </rect>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <widget class="QPushButton" name="qpbCompute">
- <property name="text">
- <string>Compute</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="qpbClose">
- <property name="text">
- <string>Close</string>
- </property>
- </widget>
- </item>
- <item>
- <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>
- <widget class="QPushButton" name="qpbHelp">
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- </font>
- </property>
- <property name="text">
- <string>Help</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="1" column="0">
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="0">
+ <widget class="QGroupBox" name="groupBox">
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="title">
+ <string>Input Mesh</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <item row="0" column="1">
+ <widget class="QLineEdit" name="qleMeshFile">
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0">
+ <widget class="QPushButton" name="qpbMeshFile">
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>DEM input file</string>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>18</width>
+ <height>18</height>
+ </size>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <spacer name="verticalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="4" column="0">
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QPushButton" name="qpbCompute">
+ <property name="text">
+ <string>Compute</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="qpbClose">
+ <property name="text">
+ <string>Close</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <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>
+ <widget class="QPushButton" name="qpbHelp">
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Help</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="0">
+ <widget class="QGroupBox" name="gbOptions">
+ <property name="title">
+ <string>Options</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_6">
+ <item row="0" column="0" rowspan="2" colspan="2">
+ <widget class="QGroupBox" name="qgbNBpoints">
+ <property name="title">
+ <string>Number of points</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_4">
+ <item row="0" column="0">
+ <widget class="QSpinBox" name="qsbXPoints">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>10</number>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLabel" name="qlXpoints">
+ <property name="text">
+ <string>X direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSpinBox" name="qsbYPoints">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>10</number>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QLabel" name="qlYpoints">
+ <property name="text">
+ <string>Y direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QSpinBox" name="qsbZPoints">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>10</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QLabel" name="qlZpoints">
+ <property name="text">
+ <string>Z direction</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="0" column="2">
+ <spacer name="horizontalSpacer_3">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>0</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="3" rowspan="2" colspan="3">
+ <widget class="QGroupBox" name="groupBox_2">
+ <property name="title">
+ <string>Meshing</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_5">
+ <item row="0" column="0">
+ <widget class="QRadioButton" name="qrbSeq">
+ <property name="text">
+ <string>Sequential</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QRadioButton" name="qrbPar">
+ <property name="text">
+ <string>Parallel</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QRadioButton" name="qrbDist">
+ <property name="text">
+ <string>Parallel distributed</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="0" column="6">
+ <spacer name="horizontalSpacer_5">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>0</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="7">
+ <widget class="QSpinBox" name="qsbNBprocs">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="8">
+ <widget class="QLabel" name="qlbNBprocs">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="text">
+ <string>Number of processors</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="7" rowspan="3" colspan="2">
+ <widget class="QGroupBox" name="qgbDist">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="title">
+ <string>Number of partitions</string>
+ </property>
+ <property name="checkable">
+ <bool>false</bool>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_3">
+ <item row="1" column="0" colspan="2">
+ <widget class="QSpinBox" name="qsbYParts">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2" colspan="2">
+ <widget class="QLabel" name="qlbYParts">
+ <property name="text">
+ <string>Y direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="2" colspan="2">
+ <widget class="QLabel" name="qlbXParts">
+ <property name="text">
+ <string>X direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="2">
+ <widget class="QLabel" name="qlbZParts">
+ <property name="text">
+ <string>Z direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2">
+ <widget class="QSpinBox" name="qsbZParts">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="2">
+ <widget class="QSpinBox" name="qsbXParts">
+ <property name="minimum">
+ <number>0</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QSpinBox" name="qsbDepth">
+ <property name="minimum">
+ <number>-999999999</number>
+ </property>
+ <property name="maximum">
+ <number>999999999</number>
+ </property>
+ <property name="value">
+ <number>0</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QLabel" name="qlDepth">
+ <property name="text">
+ <string>Depth in Z direction</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3">
+ <widget class="QCheckBox" name="qcbDisplayMesh">
+ <property name="text">
+ <string/>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="4">
+ <widget class="QLabel" name="qlDisplayMesh">
+ <property name="text">
+ <string>Display mesh</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="5">
+ <spacer name="horizontalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>60</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="qlTmpDir">
+ <property name="text">
+ <string>Workspace</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0" colspan="9">
+ <widget class="QLineEdit" name="qleTmpDir">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
</widget>
+ <tabstops>
+ <tabstop>qpbMeshFile</tabstop>
+ <tabstop>qleMeshFile</tabstop>
+ <tabstop>qsbXPoints</tabstop>
+ <tabstop>qsbYPoints</tabstop>
+ <tabstop>qsbZPoints</tabstop>
+ <tabstop>qsbDepth</tabstop>
+ <tabstop>qsbNBprocs</tabstop>
+ <tabstop>qsbXParts</tabstop>
+ <tabstop>qsbYParts</tabstop>
+ <tabstop>qsbZParts</tabstop>
+ <tabstop>qleTmpDir</tabstop>
+ <tabstop>qpbCompute</tabstop>
+ <tabstop>qpbClose</tabstop>
+ <tabstop>qpbHelp</tabstop>
+ </tabstops>
<resources/>
<connections/>
</ui>