[OpenSCAD] consistent FreeCADGui imports, fixes headless CSG import

This commit is contained in:
hrobeers
2020-09-13 15:50:51 +02:00
committed by wwmayer
parent d205122160
commit aaf12da9d0
4 changed files with 48 additions and 38 deletions

View File

@@ -28,19 +28,26 @@ __url__ = ["https://www.freecadweb.org"]
This Script includes the GUI Commands of the OpenSCAD module
'''
import FreeCAD,FreeCADGui
from PySide import QtCore, QtGui
import FreeCAD
import OpenSCADUtils
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None)
if FreeCAD.GuiUp:
import FreeCADGui
from PySide import QtCore, QtGui
gui = True
else:
gui = False
if gui:
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None)
class ExplodeGroup:
"Ungroup Objects"

View File

@@ -29,22 +29,22 @@ This Script includes various python helper functions that are shared across
the module
'''
from exportCSG import mesh2polyhedron
try:
from PySide import QtGui
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
import FreeCAD, io
if FreeCAD.GuiUp:
try:
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None)
import io
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None)
try:
import FreeCAD
BaseError = FreeCAD.Base.FreeCADError
except (ImportError, AttributeError):
BaseError = RuntimeError

View File

@@ -32,9 +32,11 @@ __url__ = ["http://www.sloan-home.co.uk/Export/Export.html"]
import FreeCAD, os, Part, math
from FreeCAD import Vector
try: import FreeCADGui
except ValueError: gui = False
else: gui = True
if FreeCAD.GuiUp:
import FreeCADGui
gui = True
else:
gui = False
#***************************************************************************
# Tailor following to your requirements ( Should all be strings ) *

View File

@@ -57,17 +57,18 @@ printverbose = True
import tokrules
from tokrules import tokens
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None)
if gui:
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def translate(context, text):
"convenience function for Qt translator"
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None, _encoding)
except AttributeError:
def translate(context, text):
"convenience function for Qt translator"
from PySide import QtGui
return QtGui.QApplication.translate(context, text, None)
def open(filename):
"called when freecad opens a file."