Draft: housekeeping: remove obsolete code (uiMode and DraftGui.py) (#8327)

This commit is contained in:
Roy-043
2023-02-02 23:24:27 +01:00
committed by GitHub
parent 932abebca9
commit ec0182b915
8 changed files with 42 additions and 574 deletions

View File

@@ -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"""

View File

@@ -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 = []

View File

@@ -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

View File

@@ -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."""

View File

@@ -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())

View File

@@ -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

View File

@@ -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.

View File

@@ -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"