-# Copyright (C) 2006-2015 EDF R&D
+# Copyright (C) 2006-2019 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
# if you already have plugins defined in a salome_plugins.py file, add this file at the end.
# if not, copy this file as ${HOME}/Plugins/smesh_plugins.py or ${APPLI}/Plugins/smesh_plugins.py
+import sys
+
def MeshCut(context):
- # get context study, studyId, salomeGui
+ # get context study, salomeGui
study = context.study
- studyId = context.studyId
sg = context.sg
import os
import subprocess
import tempfile
- from PyQt4 import QtCore
- from PyQt4 import QtGui
- from PyQt4.QtGui import QFileDialog
- from PyQt4.QtGui import QMessageBox
+ from qtsalome import QFileDialog, QMessageBox, QDialog
from MeshCutDialog_ui import Ui_Dialog
- class CutDialog(QtGui.QDialog):
+ class CutDialog(QDialog):
def __init__(self):
- QtGui.QDialog.__init__(self)
+ QDialog.__init__(self)
# Set up the user interface from Designer.
self.ui = Ui_Dialog()
self.ui.setupUi(self)
# Connect up the buttons.
- self.connect(self.ui.pb_origMeshFile, QtCore.SIGNAL("clicked()"),
- self.setInputFile)
- self.connect(self.ui.pb_cutMeshFile, QtCore.SIGNAL("clicked()"),
- self.setOutputFile)
- self.connect(self.ui.pb_help, QtCore.SIGNAL("clicked()"),
- self.helpMessage)
+ self.ui.pb_origMeshFile.clicked.connect(self.setInputFile)
+ self.ui.pb_cutMeshFile.clicked.connect(self.setOutputFile)
+ self.ui.pb_help.clicked.connect(self.helpMessage)
pass
def setInputFile(self):
if fd.exec_():
infile = fd.selectedFiles()[0]
self.ui.le_origMeshFile.setText(infile)
- insplit = os.path.splitext(infile.toLocal8Bit().data())
- outfile = insplit[0] + '_cut' + insplit[1]
- self.ui.le_cutMeshFile.setText(outfile)
+ insplit = os.path.splitext(str(infile).encode())
+ outfile = insplit[0] + '_cut'.encode() + insplit[1]
+ self.ui.le_cutMeshFile.setText(outfile.decode())
pass
def setOutputFile(self):
if result:
# dialog accepted
args = ['MeshCut']
- args += [window.ui.le_origMeshFile.text().toLocal8Bit().data()]
- args += [window.ui.le_cutMeshFile.text().toLocal8Bit().data()]
- args += [window.ui.le_outMeshName.text().toLocal8Bit().data()]
- args += [window.ui.le_groupAbove.text().toLocal8Bit().data()]
- args += [window.ui.le_groupBelow.text().toLocal8Bit().data()]
+ if sys.platform == "win32":
+ args += [str(window.ui.le_origMeshFile.text())]
+ args += [str(window.ui.le_cutMeshFile.text())]
+ args += [str(window.ui.le_outMeshName.text())]
+ args += [str(window.ui.le_groupAbove.text())]
+ args += [str(window.ui.le_groupBelow.text())]
+ else:
+ args += [str(window.ui.le_origMeshFile.text()).encode()]
+ args += [str(window.ui.le_cutMeshFile.text()).encode()]
+ args += [str(window.ui.le_outMeshName.text()).encode()]
+ args += [str(window.ui.le_groupAbove.text()).encode()]
+ args += [str(window.ui.le_groupBelow.text()).encode()]
args += [str(window.ui.dsb_normX.value())]
args += [str(window.ui.dsb_normY.value())]
args += [str(window.ui.dsb_normZ.value())]