Draft: housekeeping: remove obsolete code (uiMode and DraftGui.py) (#8327)
This commit is contained in:
+37
-426
@@ -249,9 +249,6 @@ class DraftToolBar:
|
||||
self.sourceCmd = None
|
||||
self.cancel = None
|
||||
self.pointcallback = None
|
||||
self.taskmode = 1 # Draft.getParam("UiMode",1)
|
||||
# taskmode = 0 was used by draft toolbar that is now obsolete.
|
||||
# print("taskmode: ",str(self.taskmode))
|
||||
|
||||
# OBSOLETE BUT STILL USED BY SOME ADDONS AND MACROS
|
||||
self.paramcolor = Draft.getParam("color",255)>>8
|
||||
@@ -294,52 +291,19 @@ class DraftToolBar:
|
||||
"angleValue":{"value":"avalue","unit":"Angle"}
|
||||
}
|
||||
|
||||
if self.taskmode:
|
||||
# add only a dummy widget, since widgets are created on demand
|
||||
self.baseWidget = DraftBaseWidget()
|
||||
self.tray = QtGui.QToolBar(None)
|
||||
self.tray.setObjectName("Draft tray")
|
||||
self.tray.setWindowTitle("Draft tray")
|
||||
self.toptray = self.tray
|
||||
self.bottomtray = self.tray
|
||||
self.setupTray()
|
||||
self.setupStyle()
|
||||
mw = FreeCADGui.getMainWindow()
|
||||
mw.addToolBar(self.tray)
|
||||
self.tray.setParent(mw)
|
||||
self.tray.hide()
|
||||
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
# create the draft Toolbar
|
||||
self.draftWidget = QtGui.QDockWidget()
|
||||
self.baseWidget = DraftDockWidget()
|
||||
self.draftWidget.setObjectName("draftToolbar")
|
||||
self.scroll = QtGui.QScrollArea()
|
||||
self.scroll.setWidgetResizable(True)
|
||||
self.scroll.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||
self.scroll.setWidget(self.baseWidget)
|
||||
self.draftWidget.setTitleBarWidget(self.scroll)
|
||||
p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/General")
|
||||
size = p.GetInt("ToolbarIconSize", 24)
|
||||
if size < 24:
|
||||
scale = 3.5
|
||||
else:
|
||||
scale = 2.5
|
||||
self.scroll.setMinimumHeight(size * scale)
|
||||
self.draftWidget.setWindowTitle(translate("draft", "Draft Command Bar"))
|
||||
self.mw = FreeCADGui.getMainWindow()
|
||||
self.mw.addDockWidget(QtCore.Qt.TopDockWidgetArea,self.draftWidget)
|
||||
self.draftWidget.setVisible(False)
|
||||
self.draftWidget.toggleViewAction().setVisible(False)
|
||||
self.baseWidget.setObjectName("draftToolbar")
|
||||
self.layout = QtGui.QHBoxLayout(self.baseWidget)
|
||||
self.layout.setObjectName("layout")
|
||||
self.toptray = self.layout
|
||||
self.bottomtray = self.layout
|
||||
self.setupToolBar()
|
||||
self.setupTray()
|
||||
self.setupStyle()
|
||||
self.retranslateUi(self.baseWidget)
|
||||
# add only a dummy widget, since widgets are created on demand
|
||||
self.baseWidget = DraftBaseWidget()
|
||||
self.tray = QtGui.QToolBar(None)
|
||||
self.tray.setObjectName("Draft tray")
|
||||
self.tray.setWindowTitle("Draft tray")
|
||||
self.toptray = self.tray
|
||||
self.bottomtray = self.tray
|
||||
self.setupTray()
|
||||
self.setupStyle()
|
||||
mw = FreeCADGui.getMainWindow()
|
||||
mw.addToolBar(self.tray)
|
||||
self.tray.setParent(mw)
|
||||
self.tray.hide()
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# General UI setup
|
||||
@@ -447,15 +411,6 @@ class DraftToolBar:
|
||||
boldtxt.setBold(True)
|
||||
self.cmdlabel.setFont(boldtxt)
|
||||
|
||||
# subcommands for draft Edit, OBSOLETE
|
||||
|
||||
# self.addButton = self._pushbutton("addButton", self.layout, icon="Draft_AddPoint", width=22, checkable=True)
|
||||
# self.delButton = self._pushbutton("delButton", self.layout, icon="Draft_DelPoint", width=22, checkable=True)
|
||||
# self.sharpButton = self._pushbutton("sharpButton", self.layout, icon="Draft_BezSharpNode", width=22, checkable=True)
|
||||
# self.tangentButton = self._pushbutton("tangentButton", self.layout, icon="Draft_BezTanNode", width=22, checkable=True)
|
||||
# self.symmetricButton = self._pushbutton("symmetricButton", self.layout, icon="Draft_BezSymNode", width=22, checkable=True)
|
||||
# self.arc3PtButton = self._pushbutton("arc3PtButton", self.layout, icon="Draft_Arc", width=22, checkable=True)
|
||||
|
||||
# point
|
||||
|
||||
xl = QtGui.QHBoxLayout()
|
||||
@@ -565,16 +520,10 @@ class DraftToolBar:
|
||||
self.isSubelementMode = self._checkbox("isSubelementMode",self.layout,checked=False)
|
||||
|
||||
# spacer
|
||||
if not self.taskmode:
|
||||
# self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
|
||||
QtGui.QSizePolicy.Minimum)
|
||||
else:
|
||||
spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
|
||||
QtGui.QSizePolicy.Expanding)
|
||||
spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
|
||||
QtGui.QSizePolicy.Expanding)
|
||||
self.layout.addItem(spacerItem)
|
||||
|
||||
|
||||
QtCore.QObject.connect(self.xValue,QtCore.SIGNAL("valueChanged(double)"),self.changeXValue)
|
||||
QtCore.QObject.connect(self.yValue,QtCore.SIGNAL("valueChanged(double)"),self.changeYValue)
|
||||
QtCore.QObject.connect(self.zValue,QtCore.SIGNAL("valueChanged(double)"),self.changeZValue)
|
||||
@@ -599,14 +548,6 @@ class DraftToolBar:
|
||||
QtCore.QObject.connect(self.textOkButton,QtCore.SIGNAL("clicked()"),self.sendText)
|
||||
QtCore.QObject.connect(self.zValue,QtCore.SIGNAL("returnPressed()"),self.setFocus)
|
||||
|
||||
# Draft Edit UI obsolete due to introduction of incommand context menu
|
||||
# QtCore.QObject.connect(self.addButton,QtCore.SIGNAL("toggled(bool)"),self.setAddMode)
|
||||
# QtCore.QObject.connect(self.delButton,QtCore.SIGNAL("toggled(bool)"),self.setDelMode)
|
||||
# QtCore.QObject.connect(self.sharpButton,QtCore.SIGNAL("toggled(bool)"),self.setSharpMode)
|
||||
# QtCore.QObject.connect(self.tangentButton,QtCore.SIGNAL("toggled(bool)"),self.setTangentMode)
|
||||
# QtCore.QObject.connect(self.symmetricButton,QtCore.SIGNAL("toggled(bool)"),self.setSymmetricMode)
|
||||
# QtCore.QObject.connect(self.arc3PtButton,QtCore.SIGNAL("toggled(bool)"),self.setArc3PtMode)
|
||||
|
||||
QtCore.QObject.connect(self.finishButton,QtCore.SIGNAL("pressed()"),self.finish)
|
||||
QtCore.QObject.connect(self.closeButton,QtCore.SIGNAL("pressed()"),self.closeLine)
|
||||
QtCore.QObject.connect(self.wipeButton,QtCore.SIGNAL("pressed()"),self.wipeLine)
|
||||
@@ -631,22 +572,6 @@ class DraftToolBar:
|
||||
QtCore.QObject.connect(self.chooserButton,QtCore.SIGNAL("pressed()"),self.pickFile)
|
||||
QtCore.QObject.connect(self.FFileValue,QtCore.SIGNAL("returnPressed()"),self.validateFile)
|
||||
|
||||
|
||||
# following lines can cause a crash and are not needed anymore when using the task panel
|
||||
# https://forum.freecadweb.org/viewtopic.php?f=3&t=6952
|
||||
#QtCore.QObject.connect(self.FFileValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.xValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.yValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.zValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.radiusValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.SSizeValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.STrackValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
#QtCore.QObject.connect(self.SStringValue,QtCore.SIGNAL("escaped()"),self.escape)
|
||||
|
||||
# if Ui changed to have Size & Track visible at same time, use this
|
||||
#QtCore.QObject.connect(self.SSizeValue,QtCore.SIGNAL("returnPressed()"),self.checkSSize)
|
||||
#QtCore.QObject.connect(self.STrackValue,QtCore.SIGNAL("returnPressed()"),self.checkSTrack)
|
||||
|
||||
def setupTray(self):
|
||||
"""sets draft tray buttons up"""
|
||||
|
||||
@@ -665,20 +590,6 @@ class DraftToolBar:
|
||||
p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/General")
|
||||
bsize = p.GetInt("ToolbarIconSize",24)+2
|
||||
|
||||
# OBSOLETE - replaced by style button
|
||||
#self.colorButton = self._pushbutton("colorButton",self.bottomtray, hide=False,square=True)
|
||||
#self.colorPix = QtGui.QPixmap(16,16)
|
||||
#self.colorPix.fill(self.color)
|
||||
#self.colorButton.setIcon(QtGui.QIcon(self.colorPix))
|
||||
#self.facecolorButton = self._pushbutton("facecolorButton",self.bottomtray, hide=False,square=True)
|
||||
#self.facecolorPix = QtGui.QPixmap(16,16)
|
||||
#self.facecolorPix.fill(QtGui.QColor(self.facecolor))
|
||||
#self.facecolorButton.setIcon(QtGui.QIcon(self.facecolorPix))
|
||||
#self.widthButton = self._spinbox("widthButton", self.bottomtray, val=self.linewidth,hide=False,size=(bsize * 2,bsize))
|
||||
#self.widthButton.setSuffix("px")
|
||||
#self.fontsizeButton = self._spinbox("fontsizeButton",self.bottomtray, val=self.fontsize,vmax=999, hide=False,double=True,size=(bsize * 4,bsize))
|
||||
#self.applyButton = self._pushbutton("applyButton", self.toptray, hide=False, icon='Draft_Apply',square=True)
|
||||
|
||||
self.styleButton = self._pushbutton(
|
||||
"stylebutton", self.toptray, icon='Draft_Apply', hide=False,
|
||||
width=120)
|
||||
@@ -698,13 +609,6 @@ class DraftToolBar:
|
||||
QtCore.QObject.connect(self.constrButton,QtCore.SIGNAL("toggled(bool)"),self.toggleConstrMode)
|
||||
QtCore.QObject.connect(self.autoGroupButton,QtCore.SIGNAL("pressed()"),self.runAutoGroup)
|
||||
|
||||
# OBSOLETE - replaced by style button
|
||||
#QtCore.QObject.connect(self.colorButton,QtCore.SIGNAL("pressed()"),self.getcol)
|
||||
#QtCore.QObject.connect(self.facecolorButton,QtCore.SIGNAL("pressed()"),self.getfacecol)
|
||||
#QtCore.QObject.connect(self.widthButton,QtCore.SIGNAL("valueChanged(int)"),self.setwidth)
|
||||
#QtCore.QObject.connect(self.fontsizeButton,QtCore.SIGNAL("valueChanged(double)"),self.setfontsize)
|
||||
#QtCore.QObject.connect(self.applyButton,QtCore.SIGNAL("pressed()"),self.apply)
|
||||
|
||||
QtCore.QTimer.singleShot(2000,self.retranslateTray) # delay so translations get a chance to load
|
||||
|
||||
def setupStyle(self):
|
||||
@@ -776,14 +680,6 @@ class DraftToolBar:
|
||||
+ " instead of the classic offset"))
|
||||
self.occOffset.setText(translate("draft", "&OCC-style offset"))
|
||||
|
||||
# OBSOLETE
|
||||
# self.addButton.setToolTip(translate("draft", "Add points to the current object"))
|
||||
# self.delButton.setToolTip(translate("draft", "Remove points from the current object"))
|
||||
# self.sharpButton.setToolTip(translate("draft", "Make Bezier node sharp"))
|
||||
# self.tangentButton.setToolTip(translate("draft", "Make Bezier node tangent"))
|
||||
# self.symmetricButton.setToolTip(translate("draft", "Make Bezier node symmetric"))
|
||||
# self.arc3PtButton.setToolTip(translate("draft", "Toggle radius and angles arc editing"))
|
||||
|
||||
self.undoButton.setText(translate("draft", "&Undo")+" ("+inCommandShortcuts["Undo"][0]+")")
|
||||
self.undoButton.setToolTip(translate("draft", "Undo the last segment"))
|
||||
self.closeButton.setText(translate("draft", "Close")+" ("+inCommandShortcuts["Close"][0]+")")
|
||||
@@ -837,13 +733,6 @@ class DraftToolBar:
|
||||
self.constrButton.setToolTip(translate("draft", "Toggle construction mode"))
|
||||
self.autoGroupButton.setToolTip(translate("draft", "Autogroup off"))
|
||||
|
||||
# OBSOLETE - replaced by style button
|
||||
#self.colorButton.setToolTip(translate("draft", "Current line color"))
|
||||
#self.facecolorButton.setToolTip(translate("draft", "Current face color"))
|
||||
#self.widthButton.setToolTip(translate("draft", "Current line width"))
|
||||
#self.fontsizeButton.setToolTip(translate("draft", "Current font size"))
|
||||
#self.applyButton.setToolTip(translate("draft", "Apply to selected objects"))
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Interface modes
|
||||
@@ -852,40 +741,14 @@ class DraftToolBar:
|
||||
def taskUi(self,title="Draft",extra=None,icon="Draft_Draft"):
|
||||
# reset InputField values
|
||||
self.reset_ui_values()
|
||||
if self.taskmode:
|
||||
self.isTaskOn = True
|
||||
todo.delay(FreeCADGui.Control.closeDialog,None)
|
||||
self.baseWidget = DraftBaseWidget()
|
||||
self.layout = QtGui.QVBoxLayout(self.baseWidget)
|
||||
self.setupToolBar(task=True)
|
||||
self.retranslateUi(self.baseWidget)
|
||||
self.panel = DraftTaskPanel(self.baseWidget,extra)
|
||||
todo.delay(FreeCADGui.Control.showDialog,self.panel)
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
# create a dummy task to block the UI during the works
|
||||
class dummy:
|
||||
"""an empty dialog"""
|
||||
def __init__(self,extra=None):
|
||||
if extra:
|
||||
if isinstance(extra,list):
|
||||
self.form = extra
|
||||
else:
|
||||
self.form = [extra]
|
||||
def getStandardButtons(self):
|
||||
return int(QtGui.QDialogButtonBox.Close)
|
||||
def accept(self):
|
||||
FreeCADGui.ActiveDocument.resetEdit()
|
||||
return True
|
||||
def reject(self):
|
||||
FreeCADGui.draftToolBar.isTaskOn = False
|
||||
FreeCADGui.draftToolBar.escape()
|
||||
FreeCADGui.ActiveDocument.resetEdit()
|
||||
return True
|
||||
def isAllowedAlterDocument(self):
|
||||
return False
|
||||
if FreeCADGui.Control.activeDialog():
|
||||
FreeCADGui.Control.closeDialog()
|
||||
todo.delay(FreeCADGui.Control.showDialog,dummy(extra))
|
||||
self.isTaskOn = True
|
||||
todo.delay(FreeCADGui.Control.closeDialog,None)
|
||||
self.baseWidget = DraftBaseWidget()
|
||||
self.layout = QtGui.QVBoxLayout(self.baseWidget)
|
||||
self.setupToolBar(task=True)
|
||||
self.retranslateUi(self.baseWidget)
|
||||
self.panel = DraftTaskPanel(self.baseWidget,extra)
|
||||
todo.delay(FreeCADGui.Control.showDialog,self.panel)
|
||||
self.setTitle(title,icon)
|
||||
|
||||
def redraw(self):
|
||||
@@ -1050,48 +913,8 @@ class DraftToolBar:
|
||||
self.sourceCmd = None
|
||||
self.pointcallback = None
|
||||
self.mask = None
|
||||
if self.taskmode:
|
||||
self.isTaskOn = False
|
||||
self.baseWidget = QtGui.QWidget()
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.setTitle(translate("draft", "None"))
|
||||
self.labelx.setText(translate("draft", "X"))
|
||||
self.hideXYZ()
|
||||
self.numFacesLabel.hide()
|
||||
self.numFaces.hide()
|
||||
self.hasFill.hide()
|
||||
self.finishButton.hide()
|
||||
|
||||
# OBSOLETE
|
||||
# self.addButton.hide()
|
||||
# self.delButton.hide()
|
||||
# self.sharpButton.hide()
|
||||
# self.tangentButton.hide()
|
||||
# self.symmetricButton.hide()
|
||||
# self.arc3PtButton.hide()
|
||||
|
||||
self.undoButton.hide()
|
||||
self.closeButton.hide()
|
||||
self.wipeButton.hide()
|
||||
self.orientWPButton.hide()
|
||||
self.selectButton.hide()
|
||||
self.labelRadius.hide()
|
||||
self.radiusValue.hide()
|
||||
self.isCopy.hide()
|
||||
self.textValue.hide()
|
||||
self.textOkButton.hide()
|
||||
self.continueCmd.hide()
|
||||
self.occOffset.hide()
|
||||
self.labelSString.hide()
|
||||
self.SStringValue.hide()
|
||||
self.labelSSize.hide()
|
||||
self.SSizeValue.hide()
|
||||
self.labelSTrack.hide()
|
||||
self.STrackValue.hide()
|
||||
self.labelFFile.hide()
|
||||
self.FFileValue.hide()
|
||||
self.chooserButton.hide()
|
||||
|
||||
self.isTaskOn = False
|
||||
self.baseWidget = QtGui.QWidget()
|
||||
|
||||
def trimUi(self,title=translate("draft","Trimex")):
|
||||
self.taskUi(title, icon="Draft_Trimex")
|
||||
@@ -1124,45 +947,6 @@ class DraftToolBar:
|
||||
# Change the checkbox label as the in-command shortcut cannot be used:
|
||||
self.continueCmd.setText(translate("draft", "Continue"))
|
||||
|
||||
def SSUi(self):
|
||||
''' set up ui for ShapeString text entry '''
|
||||
self.hideXYZ()
|
||||
self.labelSString.show()
|
||||
self.SStringValue.show()
|
||||
self.SStringValue.setText('')
|
||||
todo.delay(self.SStringValue.setFocus,None)
|
||||
self.continueCmd.hide()
|
||||
|
||||
def SSizeUi(self):
|
||||
''' set up ui for ShapeString size entry '''
|
||||
self.labelSString.hide()
|
||||
self.SStringValue.hide()
|
||||
self.continueCmd.hide()
|
||||
self.labelSSize.show()
|
||||
self.SSizeValue.setText(FreeCAD.Units.Quantity(1,FreeCAD.Units.Length).UserString)
|
||||
self.SSizeValue.show()
|
||||
todo.delay(self.SSizeValue.setFocus,None)
|
||||
|
||||
def STrackUi(self):
|
||||
''' set up ui for ShapeString tracking entry '''
|
||||
self.labelSSize.hide()
|
||||
self.SSizeValue.hide()
|
||||
self.labelSTrack.show()
|
||||
self.STrackValue.setText(FreeCAD.Units.Quantity(0,FreeCAD.Units.Length).UserString)
|
||||
self.STrackValue.show()
|
||||
todo.delay(self.STrackValue.setFocus,None)
|
||||
|
||||
def SFileUi(self):
|
||||
''' set up UI for ShapeString font file selection '''
|
||||
self.labelSTrack.hide()
|
||||
self.STrackValue.hide()
|
||||
if not self.FFileValue.text():
|
||||
self.FFileValue.setText(Draft.getParam("FontFile",""))
|
||||
self.labelFFile.show()
|
||||
self.FFileValue.show()
|
||||
self.chooserButton.show()
|
||||
todo.delay(self.FFileValue.setFocus,None)
|
||||
|
||||
def switchUi(self,store=True):
|
||||
if store:
|
||||
self.state = []
|
||||
@@ -1184,17 +968,10 @@ class DraftToolBar:
|
||||
self.state = None
|
||||
|
||||
def setTitle(self,title,icon="Draft_Draft"):
|
||||
if self.taskmode:
|
||||
self.baseWidget.setWindowTitle(title)
|
||||
self.baseWidget.setWindowIcon(QtGui.QIcon(":/icons/"+icon+".svg"))
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.cmdlabel.setText(title)
|
||||
self.baseWidget.setWindowTitle(title)
|
||||
self.baseWidget.setWindowIcon(QtGui.QIcon(":/icons/"+icon+".svg"))
|
||||
|
||||
def selectUi(self,extra=None, on_close_call=None):
|
||||
if not self.taskmode:
|
||||
# self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.labelx.setText(translate("draft", "Pick Object"))
|
||||
self.labelx.show()
|
||||
self.makeDumbTask(extra, on_close_call)
|
||||
|
||||
def editUi(self):
|
||||
@@ -1216,10 +993,6 @@ class DraftToolBar:
|
||||
self.isCopy.setChecked(p.GetBool("copymodeValue",False))
|
||||
self.continueCmd.show()
|
||||
|
||||
# def vertUi(self,addmode=True):
|
||||
# self.addButton.setChecked(addmode)
|
||||
# self.delButton.setChecked(not(addmode))
|
||||
|
||||
def checkLocal(self):
|
||||
"""checks if x,y,z coords must be displayed as local or global"""
|
||||
if not self.globalMode and self.relativeMode:
|
||||
@@ -1239,22 +1012,13 @@ class DraftToolBar:
|
||||
self.labely.setText(translate("draft", "Global Y"))
|
||||
self.labelz.setText(translate("draft", "Global Z"))
|
||||
|
||||
# def setEditButtons(self,mode):
|
||||
# self.addButton.setEnabled(mode)
|
||||
# self.delButton.setEnabled(mode)
|
||||
|
||||
# def setBezEditButtons(self,mode):
|
||||
# self.sharpButton.setEnabled(mode)
|
||||
# self.tangentButton.setEnabled(mode)
|
||||
# self.symmetricButton.setEnabled(mode)
|
||||
|
||||
def setNextFocus(self):
|
||||
def isThere(widget):
|
||||
if widget.isEnabled() and widget.isVisible():
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
if (not self.taskmode) or self.isTaskOn:
|
||||
if self.isTaskOn:
|
||||
if isThere(self.xValue):
|
||||
self.setFocus()
|
||||
elif isThere(self.yValue):
|
||||
@@ -1315,74 +1079,6 @@ class DraftToolBar:
|
||||
# Processing functions
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
def getcol(self):
|
||||
"""opens a color picker dialog"""
|
||||
print("draft: warning: getcol() is obsolete")
|
||||
return
|
||||
oldColor = self.color
|
||||
self.color=QtGui.QColorDialog.getColor(self.color)
|
||||
if not QtGui.QColor.isValid(self.color): #user canceled
|
||||
self.color = oldColor
|
||||
return
|
||||
self.colorPix.fill(self.color)
|
||||
self.colorButton.setIcon(QtGui.QIcon(self.colorPix))
|
||||
if Draft.getParam("saveonexit",False):
|
||||
Draft.setParam("color",self.color.rgb()<<8)
|
||||
r = float(self.color.red()/255.0)
|
||||
g = float(self.color.green()/255.0)
|
||||
b = float(self.color.blue()/255.0)
|
||||
col = (r,g,b,0.0)
|
||||
for i in FreeCADGui.Selection.getSelection():
|
||||
if (i.TypeId == "App::Annotation"):
|
||||
i.ViewObject.TextColor=col
|
||||
else:
|
||||
if "LineColor" in i.ViewObject.PropertiesList:
|
||||
i.ViewObject.LineColor = col
|
||||
if "PointColor" in i.ViewObject.PropertiesList:
|
||||
i.ViewObject.PointColor = col
|
||||
|
||||
def getfacecol(self):
|
||||
"""opens a color picker dialog"""
|
||||
print("draft: warning: getfacecol() is obsolete")
|
||||
return
|
||||
oldColor = self.facecolor
|
||||
self.facecolor=QtGui.QColorDialog.getColor(self.facecolor)
|
||||
if not QtGui.QColor.isValid(self.facecolor): #user canceled
|
||||
self.facecolor = oldColor
|
||||
return
|
||||
self.facecolorPix.fill(self.facecolor)
|
||||
self.facecolorButton.setIcon(QtGui.QIcon(self.facecolorPix))
|
||||
if Draft.getParam("saveonexit",False):
|
||||
FreeCAD.ParamGet("User parameter:BaseApp/Preferences/View")\
|
||||
.SetUnsigned("DefaultShapeColor",self.facecolor.rgb()<<8)
|
||||
r = float(self.facecolor.red()/255.0)
|
||||
g = float(self.facecolor.green()/255.0)
|
||||
b = float(self.facecolor.blue()/255.0)
|
||||
col = (r,g,b,0.0)
|
||||
for i in FreeCADGui.Selection.getSelection():
|
||||
if "ShapeColor" in i.ViewObject.PropertiesList:
|
||||
i.ViewObject.ShapeColor = col
|
||||
|
||||
def setwidth(self,val):
|
||||
print("draft: warning: setwidth() is obsolete")
|
||||
return
|
||||
self.linewidth = float(val)
|
||||
if Draft.getParam("saveonexit",False):
|
||||
Draft.setParam("linewidth",int(val))
|
||||
for i in FreeCADGui.Selection.getSelection():
|
||||
if "LineWidth" in i.ViewObject.PropertiesList:
|
||||
i.ViewObject.LineWidth = float(val)
|
||||
|
||||
def setfontsize(self,val):
|
||||
print("draft: warning: setfontsize() is obsolete")
|
||||
return
|
||||
self.fontsize = float(val)
|
||||
if Draft.getParam("saveonexit",False):
|
||||
Draft.setParam("textheight",float(val))
|
||||
for i in FreeCADGui.Selection.getSelection():
|
||||
if "FontSize" in i.ViewObject.PropertiesList:
|
||||
i.ViewObject.FontSize = float(val)
|
||||
|
||||
def setContinue(self,val):
|
||||
if self.continueCmd.isVisible():
|
||||
self.continueMode = bool(val)
|
||||
@@ -1391,12 +1087,6 @@ class DraftToolBar:
|
||||
if self.hasFill.isVisible():
|
||||
self.fillmode = bool(val)
|
||||
|
||||
def apply(self):
|
||||
print("draft: warning: apply() is obsolete")
|
||||
return
|
||||
for i in FreeCADGui.Selection.getSelection():
|
||||
Draft.formatObject(i)
|
||||
|
||||
def checkx(self):
|
||||
if self.yValue.isEnabled():
|
||||
self.yValue.setFocus()
|
||||
@@ -1539,7 +1229,6 @@ class DraftToolBar:
|
||||
FreeCAD.Console.PrintMessage(
|
||||
translate("draft", "Please enter a font file."))
|
||||
|
||||
|
||||
def finish(self, cont=None):
|
||||
"""finish button action"""
|
||||
if self.sourceCmd:
|
||||
@@ -1727,7 +1416,7 @@ class DraftToolBar:
|
||||
|
||||
def displayPoint(self, point=None, last=None, plane=None, mask=None):
|
||||
"""this function displays the passed coords in the x, y, and z widgets"""
|
||||
if self.taskmode and (not self.isTaskOn):
|
||||
if not self.isTaskOn:
|
||||
return
|
||||
|
||||
if not plane:
|
||||
@@ -1886,10 +1575,7 @@ class DraftToolBar:
|
||||
pass
|
||||
|
||||
def isConstructionMode(self):
|
||||
if self.tray or (not self.taskmode):
|
||||
return self.constrButton.isChecked()
|
||||
else:
|
||||
return False
|
||||
return self.tray is not None and self.constrButton.isChecked()
|
||||
|
||||
def drawPage(self):
|
||||
self.sourceCmd.draw()
|
||||
@@ -1958,45 +1644,6 @@ class DraftToolBar:
|
||||
def popupTriggered(self,action):
|
||||
self.sourceCmd.proceed(str(action.text()))
|
||||
|
||||
# def setAddMode(self,bool):
|
||||
# if self.addButton.isChecked():
|
||||
# self.delButton.setChecked(False)
|
||||
# self.symmetricButton.setChecked(False)
|
||||
# self.sharpButton.setChecked(False)
|
||||
# self.tangentButton.setChecked(False)
|
||||
|
||||
# def setDelMode(self,bool):
|
||||
# if self.delButton.isChecked():
|
||||
# self.addButton.setChecked(False)
|
||||
# self.symmetricButton.setChecked(False)
|
||||
# self.sharpButton.setChecked(False)
|
||||
# self.tangentButton.setChecked(False)
|
||||
|
||||
# def setSharpMode(self,bool):
|
||||
# if self.sharpButton.isChecked():
|
||||
# self.tangentButton.setChecked(False)
|
||||
# self.symmetricButton.setChecked(False)
|
||||
# self.addButton.setChecked(False)
|
||||
# self.delButton.setChecked(False)
|
||||
|
||||
# def setTangentMode(self,bool):
|
||||
# if self.tangentButton.isChecked():
|
||||
# self.sharpButton.setChecked(False)
|
||||
# self.symmetricButton.setChecked(False)
|
||||
# self.addButton.setChecked(False)
|
||||
# self.delButton.setChecked(False)
|
||||
|
||||
# def setSymmetricMode(self,bool):
|
||||
# if self.symmetricButton.isChecked():
|
||||
# self.sharpButton.setChecked(False)
|
||||
# self.tangentButton.setChecked(False)
|
||||
# self.addButton.setChecked(False)
|
||||
# self.delButton.setChecked(False)
|
||||
|
||||
# def setArc3PtMode(self,bool):
|
||||
# if self.arc3PtButton.isChecked():
|
||||
# self.arc3PtButton.setChecked(True)
|
||||
|
||||
def setRadiusValue(self,val,unit=None):
|
||||
#print("DEBUG: setRadiusValue val: ", val, " unit: ", unit)
|
||||
if not isinstance(val, (int, float)): #??some code passes strings or ???
|
||||
@@ -2036,16 +1683,6 @@ class DraftToolBar:
|
||||
self.autoGroupButton.setToolTip(translate("draft", "Autogroup off"))
|
||||
self.autoGroupButton.setDown(False)
|
||||
|
||||
def show(self):
|
||||
if not self.taskmode:
|
||||
# self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.draftWidget.setVisible(True)
|
||||
|
||||
def hide(self):
|
||||
if not self.taskmode:
|
||||
# self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.draftWidget.setVisible(False)
|
||||
|
||||
def getXPM(self,iconname,size=16):
|
||||
i = QtGui.QIcon(":/icons/"+iconname+".svg")
|
||||
p = i.pixmap(size,size)
|
||||
@@ -2183,24 +1820,6 @@ class DraftToolBar:
|
||||
def shouldShow(self):
|
||||
return (FreeCAD.ActiveDocument is not None) and (FreeCADGui.Selection.getSelection() != [])
|
||||
|
||||
# OBSOLETE
|
||||
#class DraftTrayWatcher:
|
||||
# def __init__(self,traywidget):
|
||||
# self.form = traywidget
|
||||
# self.widgets = [self.form]
|
||||
# def shouldShow(self):
|
||||
# return True
|
||||
#self.traywidget = QtGui.QWidget()
|
||||
#self.tray = QtGui.QVBoxLayout(self.traywidget)
|
||||
#self.tray.setObjectName("traylayout")
|
||||
#self.toptray = QtGui.QHBoxLayout()
|
||||
#self.bottomtray = QtGui.QHBoxLayout()
|
||||
#self.tray.addLayout(self.toptray)
|
||||
#self.tray.addLayout(self.bottomtray)
|
||||
#self.setupTray()
|
||||
#self.setupStyle()
|
||||
#w = DraftTrayWatcher(self.traywidget)
|
||||
#FreeCADGui.Control.addTaskWatcher([w,DraftCreateWatcher(),DraftModifyWatcher()])
|
||||
FreeCADGui.Control.addTaskWatcher([DraftCreateWatcher(),DraftModifyWatcher()])
|
||||
|
||||
def changeEvent(self, event):
|
||||
@@ -2209,26 +1828,18 @@ class DraftToolBar:
|
||||
self.ui.retranslateUi(self)
|
||||
|
||||
def Activated(self):
|
||||
if self.taskmode:
|
||||
self.setWatchers()
|
||||
if hasattr(self,"tray"):
|
||||
self.tray.show()
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.draftWidget.setVisible(True)
|
||||
self.draftWidget.toggleViewAction().setVisible(True)
|
||||
self.setWatchers()
|
||||
if hasattr(self,"tray"):
|
||||
self.tray.show()
|
||||
|
||||
def Deactivated(self):
|
||||
if (FreeCAD.activeDraftCommand is not None):
|
||||
self.continueMode = False
|
||||
FreeCAD.activeDraftCommand.finish()
|
||||
if self.taskmode:
|
||||
FreeCADGui.Control.clearTaskWatcher()
|
||||
#self.tray = None
|
||||
if hasattr(self,"tray"):
|
||||
self.tray.hide()
|
||||
else: # self.taskmode == 0 Draft toolbar is obsolete and has been disabled (February 2020)
|
||||
self.draftWidget.setVisible(False)
|
||||
self.draftWidget.toggleViewAction().setVisible(False)
|
||||
FreeCADGui.Control.clearTaskWatcher()
|
||||
#self.tray = None
|
||||
if hasattr(self,"tray"):
|
||||
self.tray.hide()
|
||||
|
||||
def reset_ui_values(self):
|
||||
"""Method to reset task panel values"""
|
||||
|
||||
@@ -137,7 +137,6 @@ class DraftTool:
|
||||
self.ui = Gui.draftToolBar
|
||||
self.featureName = name
|
||||
self.ui.sourceCmd = self
|
||||
self.ui.show()
|
||||
if not noplanesetup:
|
||||
App.DraftWorkingPlane.setup()
|
||||
self.node = []
|
||||
|
||||
@@ -187,8 +187,6 @@ class BezCurve(gui_lines.Line):
|
||||
if self.ui:
|
||||
if hasattr(self, "bezcurvetrack"):
|
||||
self.bezcurvetrack.finalize()
|
||||
if not utils.getParam("UiMode", 1):
|
||||
Gui.Control.closeDialog()
|
||||
if self.obj:
|
||||
# remove temporary object, if any
|
||||
old = self.obj.Name
|
||||
@@ -422,8 +420,6 @@ class CubicBezCurve(gui_lines.Line):
|
||||
if self.ui:
|
||||
if hasattr(self, "bezcurvetrack"):
|
||||
self.bezcurvetrack.finalize()
|
||||
if not utils.getParam("UiMode", 1):
|
||||
Gui.Control.closeDialog()
|
||||
if self.obj:
|
||||
# remove temporary object, if any
|
||||
old = self.obj.Name
|
||||
|
||||
@@ -120,7 +120,6 @@ class Dimension(gui_base_original.Creator):
|
||||
self.selectmode = False
|
||||
self.set_selection()
|
||||
_msg(translate("draft", "Pick first point"))
|
||||
Gui.draftToolBar.show()
|
||||
|
||||
def set_selection(self):
|
||||
"""Fill the nodes according to the selected geometry."""
|
||||
|
||||
@@ -72,144 +72,10 @@ class ShapeString(gui_base_original.Creator):
|
||||
super(ShapeString, self).Activated(name="ShapeString")
|
||||
if self.ui:
|
||||
self.ui.sourceCmd = self
|
||||
self.taskmode = utils.getParam("UiMode", 1)
|
||||
if self.taskmode:
|
||||
# This doesn't use the task panel defined in DraftGui
|
||||
# so it is deleted and a new task panel is installed
|
||||
try:
|
||||
del self.task
|
||||
except AttributeError:
|
||||
pass
|
||||
self.task = ShapeStringTaskPanelCmd(self)
|
||||
self.call = self.view.addEventCallback("SoEvent", self.task.action)
|
||||
_msg(translate("draft", "Pick ShapeString location point"))
|
||||
todo.ToDo.delay(Gui.Control.showDialog, self.task)
|
||||
else:
|
||||
self.text = ''
|
||||
self.ui.sourceCmd = self
|
||||
self.ui.pointUi(title=translate("draft",self.featureName),
|
||||
icon="Draft_ShapeString")
|
||||
self.active = True
|
||||
self.call = self.view.addEventCallback("SoEvent", self.action)
|
||||
self.ssBase = None
|
||||
self.ui.xValue.setFocus()
|
||||
self.ui.xValue.selectAll()
|
||||
_msg(translate("draft", "Pick ShapeString location point"))
|
||||
Gui.draftToolBar.show()
|
||||
|
||||
# The createObject function is no longer used.
|
||||
# See the function with the same name in task_shapestring.py.
|
||||
def createObject(self):
|
||||
"""Create the actual object in the current document."""
|
||||
# print("debug: D_T ShapeString.createObject type(self.SString):"
|
||||
# + str(type(self.SString)))
|
||||
|
||||
dquote = '"'
|
||||
String = dquote + self.SString + dquote
|
||||
|
||||
# Size and tracking are numbers;
|
||||
# they are ASCII so this conversion should always work
|
||||
Size = str(self.SSSize)
|
||||
Tracking = str(self.SSTrack)
|
||||
FFile = dquote + self.FFile + dquote
|
||||
|
||||
try:
|
||||
qr, sup, points, fil = self.getStrings()
|
||||
Gui.addModule("Draft")
|
||||
_cmd = 'Draft.make_shapestring'
|
||||
_cmd += '('
|
||||
_cmd += 'String=' + String + ', '
|
||||
_cmd += 'FontFile=' + FFile + ', '
|
||||
_cmd += 'Size=' + Size + ', '
|
||||
_cmd += 'Tracking=' + Tracking
|
||||
_cmd += ')'
|
||||
_cmd_list = ['ss = ' + _cmd,
|
||||
'plm = FreeCAD.Placement()',
|
||||
'plm.Base = ' + DraftVecUtils.toString(self.ssBase),
|
||||
'plm.Rotation.Q = ' + qr,
|
||||
'ss.Placement = plm',
|
||||
'ss.Support = ' + sup,
|
||||
'Draft.autogroup(ss)',
|
||||
'FreeCAD.ActiveDocument.recompute()']
|
||||
self.commit(translate("draft", "Create ShapeString"),
|
||||
_cmd_list)
|
||||
except Exception:
|
||||
_err("Draft_ShapeString: error delaying commit")
|
||||
self.finish()
|
||||
|
||||
def action(self, arg):
|
||||
"""Handle the 3D scene events.
|
||||
|
||||
This is installed as an EventCallback in the Inventor view.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
arg: dict
|
||||
Dictionary with strings that indicates the type of event received
|
||||
from the 3D view.
|
||||
"""
|
||||
if arg["Type"] == "SoKeyboardEvent":
|
||||
if arg["Key"] == "ESCAPE":
|
||||
self.finish()
|
||||
elif arg["Type"] == "SoLocation2Event": # mouse movement detection
|
||||
if self.active:
|
||||
(self.point,
|
||||
ctrlPoint, info) = gui_tool_utils.getPoint(self, arg,
|
||||
noTracker=True)
|
||||
gui_tool_utils.redraw3DView()
|
||||
elif arg["Type"] == "SoMouseButtonEvent":
|
||||
if (arg["State"] == "DOWN") and (arg["Button"] == "BUTTON1"):
|
||||
if not self.ssBase:
|
||||
self.ssBase = self.point
|
||||
self.active = False
|
||||
Gui.Snapper.off()
|
||||
self.ui.SSUi()
|
||||
|
||||
def numericInput(self, numx, numy, numz):
|
||||
"""Validate the entry fields in the user interface.
|
||||
|
||||
This function is called by the toolbar or taskpanel interface
|
||||
when valid x, y, and z have been entered in the input fields.
|
||||
"""
|
||||
self.ssBase = App.Vector(numx, numy, numz)
|
||||
self.ui.SSUi() # move on to next step in parameter entry
|
||||
|
||||
def numericSSize(self, ssize):
|
||||
"""Validate the size in the user interface.
|
||||
|
||||
This function is called by the toolbar or taskpanel interface
|
||||
when a valid size parameter has been entered in the input field.
|
||||
"""
|
||||
self.SSSize = ssize
|
||||
self.ui.STrackUi()
|
||||
|
||||
def numericSTrack(self, strack):
|
||||
"""Validate the tracking value in the user interface.
|
||||
|
||||
This function is called by the toolbar or taskpanel interface
|
||||
when a valid tracking value has been entered in the input field.
|
||||
"""
|
||||
self.SSTrack = strack
|
||||
self.ui.SFileUi()
|
||||
|
||||
def validSString(self, sstring):
|
||||
"""Validate the string value in the user interface.
|
||||
|
||||
This function is called by the toolbar or taskpanel interface
|
||||
when a valid string value has been entered in the input field.
|
||||
"""
|
||||
self.SString = sstring
|
||||
self.ui.SSizeUi()
|
||||
|
||||
def validFFile(self, FFile):
|
||||
"""Validate the font file value in the user interface.
|
||||
|
||||
This function is called by the toolbar or taskpanel interface
|
||||
when a valid font file value has been entered in the input field.
|
||||
"""
|
||||
self.FFile = FFile
|
||||
# last step in ShapeString parm capture, create object
|
||||
self.createObject()
|
||||
self.task = ShapeStringTaskPanelCmd(self)
|
||||
self.call = self.view.addEventCallback("SoEvent", self.task.action)
|
||||
_msg(translate("draft", "Pick ShapeString location point"))
|
||||
todo.ToDo.delay(Gui.Control.showDialog, self.task)
|
||||
|
||||
|
||||
Gui.addCommand('Draft_ShapeString', ShapeString())
|
||||
|
||||
@@ -157,8 +157,6 @@ class BSpline(gui_lines.Line):
|
||||
"""
|
||||
if self.ui:
|
||||
self.bsplinetrack.finalize()
|
||||
if not utils.getParam("UiMode", 1):
|
||||
Gui.Control.closeDialog()
|
||||
if self.obj:
|
||||
# Remove temporary object, if any
|
||||
old = self.obj.Name
|
||||
|
||||
@@ -74,7 +74,6 @@ class Text(gui_base_original.Creator):
|
||||
self.ui.xValue.setFocus()
|
||||
self.ui.xValue.selectAll()
|
||||
_msg(translate("draft", "Pick location point"))
|
||||
Gui.draftToolBar.show()
|
||||
|
||||
def finish(self, cont=False):
|
||||
"""Terminate the operation.
|
||||
|
||||
@@ -167,7 +167,7 @@ def get_param_type(param):
|
||||
"""
|
||||
if param in ("dimsymbol", "dimPrecision", "dimorientation",
|
||||
"precision", "defaultWP", "snapRange", "gridEvery",
|
||||
"linewidth", "UiMode", "modconstrain", "modsnap",
|
||||
"linewidth", "modconstrain", "modsnap",
|
||||
"maxSnapEdges", "modalt", "HatchPatternResolution",
|
||||
"snapStyle", "dimstyle", "gridSize", "gridTransparency"):
|
||||
return "int"
|
||||
|
||||
Reference in New Issue
Block a user