From 627a89d8dbe377da708788309410a32eaf5ff018 Mon Sep 17 00:00:00 2001 From: Ryan Kembrey Date: Fri, 4 Jul 2025 21:39:45 +1000 Subject: [PATCH] BIM: Update UI string for consistency Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com> Closes: #22328 --- src/Mod/BIM/ArchBuildingPart.py | 4 +- src/Mod/BIM/ArchCommands.py | 8 +-- src/Mod/BIM/ArchComponent.py | 8 +-- src/Mod/BIM/ArchEquipment.py | 2 +- src/Mod/BIM/ArchMaterial.py | 2 +- src/Mod/BIM/ArchNesting.py | 30 ++++----- src/Mod/BIM/ArchPanel.py | 2 +- src/Mod/BIM/ArchReference.py | 2 +- src/Mod/BIM/ArchSectionPlane.py | 2 +- src/Mod/BIM/ArchStructure.py | 16 ++--- src/Mod/BIM/BimStatus.py | 4 +- src/Mod/BIM/Dice3DS/dom3ds.py | 12 ++-- src/Mod/BIM/InitGui.py | 30 ++++----- src/Mod/BIM/OfflineRenderingUtils.py | 6 +- src/Mod/BIM/Resources/ui/ArchMaterial.ui | 10 +-- src/Mod/BIM/Resources/ui/ArchMultiMaterial.ui | 8 +-- src/Mod/BIM/Resources/ui/ArchNest.ui | 6 +- src/Mod/BIM/Resources/ui/ArchSchedule.ui | 18 +++--- .../BIM/Resources/ui/BimServerTaskPanel.ui | 10 +-- .../BIM/Resources/ui/DialogBimServerLogin.ui | 8 +-- src/Mod/BIM/Resources/ui/GitTaskPanel.ui | 4 +- src/Mod/BIM/Resources/ui/dialogAddProperty.ui | 2 +- src/Mod/BIM/Resources/ui/dialogClasses.ui | 2 +- .../BIM/Resources/ui/dialogClassification.ui | 10 +-- .../BIM/Resources/ui/dialogConvertDocument.ui | 11 ++-- src/Mod/BIM/Resources/ui/dialogConvertType.ui | 2 +- .../BIM/Resources/ui/dialogCreateProject.ui | 4 +- .../Resources/ui/dialogCustomProperties.ui | 6 +- src/Mod/BIM/Resources/ui/dialogDiff.ui | 2 +- src/Mod/BIM/Resources/ui/dialogExport.ui | 4 +- src/Mod/BIM/Resources/ui/dialogIfcElements.ui | 8 +-- .../BIM/Resources/ui/dialogIfcProperties.ui | 10 +-- .../Resources/ui/dialogIfcPropertiesRedux.ui | 8 +-- .../BIM/Resources/ui/dialogIfcQuantities.ui | 4 +- src/Mod/BIM/Resources/ui/dialogImport.ui | 10 +-- src/Mod/BIM/Resources/ui/dialogLayersIFC.ui | 6 +- src/Mod/BIM/Resources/ui/dialogLibrary.ui | 16 ++--- .../BIM/Resources/ui/dialogMaterialChooser.ui | 2 +- src/Mod/BIM/Resources/ui/dialogNudgeValue.ui | 2 +- src/Mod/BIM/Resources/ui/dialogPhases.ui | 4 +- src/Mod/BIM/Resources/ui/dialogPreflight.ui | 36 +++++------ .../Resources/ui/dialogPreflightResults.ui | 6 +- .../BIM/Resources/ui/dialogProjectManager.ui | 62 +++++++++---------- .../Resources/ui/dialogQuantitySurveying.ui | 10 +-- src/Mod/BIM/Resources/ui/dialogReorder.ui | 4 +- src/Mod/BIM/Resources/ui/dialogSetup.ui | 52 ++++++++-------- src/Mod/BIM/Resources/ui/dialogSpaces.ui | 6 +- src/Mod/BIM/Resources/ui/dialogTree.ui | 2 +- src/Mod/BIM/Resources/ui/dialogTutorial.ui | 11 ++-- src/Mod/BIM/Resources/ui/dialogWelcome.ui | 12 ++-- src/Mod/BIM/Resources/ui/dialogWindows.ui | 10 +-- src/Mod/BIM/Resources/ui/preferences-arch.ui | 16 ++--- src/Mod/BIM/Resources/ui/preferences-dae.ui | 4 +- .../Resources/ui/preferences-ifc-export.ui | 41 ++++++------ src/Mod/BIM/Resources/ui/preferences-ifc.ui | 20 +++--- .../Resources/ui/preferences-sh3d-import.ui | 48 +++++++------- .../BIM/Resources/ui/preferencesNativeIFC.ui | 14 ++--- src/Mod/BIM/TestArchGui.py | 2 +- src/Mod/BIM/bimcommands/BimArchUtils.py | 34 +++++----- src/Mod/BIM/bimcommands/BimAxis.py | 4 +- src/Mod/BIM/bimcommands/BimBackground.py | 2 +- src/Mod/BIM/bimcommands/BimBuilder.py | 2 +- src/Mod/BIM/bimcommands/BimBuildingPart.py | 4 +- src/Mod/BIM/bimcommands/BimClassification.py | 4 +- src/Mod/BIM/bimcommands/BimCommon.py | 2 +- src/Mod/BIM/bimcommands/BimCompound.py | 4 +- src/Mod/BIM/bimcommands/BimCurtainwall.py | 2 +- src/Mod/BIM/bimcommands/BimCut.py | 2 +- src/Mod/BIM/bimcommands/BimCutPlane.py | 4 +- src/Mod/BIM/bimcommands/BimDiff.py | 26 ++++---- src/Mod/BIM/bimcommands/BimDimensions.py | 12 ++-- src/Mod/BIM/bimcommands/BimEmptyTrash.py | 4 +- src/Mod/BIM/bimcommands/BimEquipment.py | 4 +- src/Mod/BIM/bimcommands/BimExtrude.py | 2 +- src/Mod/BIM/bimcommands/BimFuse.py | 2 +- src/Mod/BIM/bimcommands/BimIfcElements.py | 4 +- src/Mod/BIM/bimcommands/BimIfcExplorer.py | 6 +- src/Mod/BIM/bimcommands/BimIfcProperties.py | 10 +-- src/Mod/BIM/bimcommands/BimIfcQuantities.py | 4 +- src/Mod/BIM/bimcommands/BimImagePlane.py | 4 +- src/Mod/BIM/bimcommands/BimLayers.py | 4 +- src/Mod/BIM/bimcommands/BimLibrary.py | 10 +-- src/Mod/BIM/bimcommands/BimMaterial.py | 6 +- src/Mod/BIM/bimcommands/BimMoveView.py | 2 +- src/Mod/BIM/bimcommands/BimOffset.py | 2 +- src/Mod/BIM/bimcommands/BimPanel.py | 2 +- src/Mod/BIM/bimcommands/BimPipe.py | 8 +-- src/Mod/BIM/bimcommands/BimPreflight.py | 24 +++---- src/Mod/BIM/bimcommands/BimProject.py | 2 +- src/Mod/BIM/bimcommands/BimProjectManager.py | 8 +-- src/Mod/BIM/bimcommands/BimRebar.py | 4 +- src/Mod/BIM/bimcommands/BimReextrude.py | 6 +- src/Mod/BIM/bimcommands/BimReference.py | 2 +- src/Mod/BIM/bimcommands/BimReorder.py | 4 +- .../BIM/bimcommands/BimResetCloneColors.py | 2 +- src/Mod/BIM/bimcommands/BimSetup.py | 14 ++--- src/Mod/BIM/bimcommands/BimShape2DView.py | 4 +- src/Mod/BIM/bimcommands/BimSimpleCopy.py | 4 +- src/Mod/BIM/bimcommands/BimSite.py | 2 +- src/Mod/BIM/bimcommands/BimTDView.py | 6 +- src/Mod/BIM/bimcommands/BimTogglePanels.py | 4 +- src/Mod/BIM/bimcommands/BimTrash.py | 4 +- src/Mod/BIM/bimcommands/BimTruss.py | 4 +- src/Mod/BIM/bimcommands/BimTutorial.py | 4 +- src/Mod/BIM/bimcommands/BimUnclone.py | 6 +- src/Mod/BIM/bimcommands/BimUngroup.py | 2 +- src/Mod/BIM/bimcommands/BimViews.py | 4 +- src/Mod/BIM/bimcommands/BimWPCommands.py | 6 +- src/Mod/BIM/bimcommands/BimWall.py | 2 +- src/Mod/BIM/bimcommands/BimWelcome.py | 4 +- src/Mod/BIM/bimcommands/BimWindows.py | 4 +- src/Mod/BIM/importers/importIFClegacy.py | 6 +- src/Mod/BIM/importers/importSH3DHelper.py | 54 ++++++++-------- src/Mod/BIM/nativeifc/ifc_commands.py | 10 +-- src/Mod/BIM/nativeifc/ifc_diff.py | 2 +- src/Mod/BIM/nativeifc/ifc_openshell.py | 6 +- src/Mod/BIM/utils/buildPsets.py | 6 +- 117 files changed, 521 insertions(+), 526 deletions(-) diff --git a/src/Mod/BIM/ArchBuildingPart.py b/src/Mod/BIM/ArchBuildingPart.py index 78aed908ba..bfb7a49959 100644 --- a/src/Mod/BIM/ArchBuildingPart.py +++ b/src/Mod/BIM/ArchBuildingPart.py @@ -836,7 +836,7 @@ class ViewProviderBuildingPart: self.writeCamera) menu.addAction(actionWriteCamera) - actionCreateGroup = QtGui.QAction(translate("Arch", "Create group..."), + actionCreateGroup = QtGui.QAction(translate("Arch", "New Group"), menu) QtCore.QObject.connect(actionCreateGroup, QtCore.SIGNAL("triggered()"), @@ -943,7 +943,7 @@ class ViewProviderBuildingPart: if hasattr(self,"Object"): if not self.Object.Height.Value: - FreeCAD.Console.PrintError("This level has no height value. Please define a height before using this function.\n") + FreeCAD.Console.PrintError("This level has no height value. Define a height before using this function.\n") return height = self.Object.Height.Value ng = [] diff --git a/src/Mod/BIM/ArchCommands.py b/src/Mod/BIM/ArchCommands.py index 57420587bf..4ba5f27564 100644 --- a/src/Mod/BIM/ArchCommands.py +++ b/src/Mod/BIM/ArchCommands.py @@ -707,7 +707,7 @@ def download(url,force=False): if os.path.exists(filepath) and not(force): return filepath try: - FreeCAD.Console.PrintMessage("downloading "+url+" ...\n") + FreeCAD.Console.PrintMessage("Downloading "+url+" …\n") response = urlopen(url) s = response.read() f = open(filepath,'wb') @@ -734,7 +734,7 @@ def check(objectslist,includehidden=False): elif not s.isValid(): bad.append([o,translate("Arch","is not valid")]) elif (not s.Solids) and (not (Draft.getType(o) == "Axis")): - bad.append([o,translate("Arch","doesn't contain any solid")]) + bad.append([o,translate("Arch","does not contain any solid")]) else: f = 0 for sol in s.Solids: @@ -1315,7 +1315,7 @@ def toggleIfcBrepFlag(obj): """toggleIfcBrepFlag(obj): toggles the IFC brep flag of the given object, forcing it to be exported as brep geometry or not.""" if not hasattr(obj,"IfcData"): - FreeCAD.Console.PrintMessage(translate("Arch","Object doesn't have settable IFC attributes")) + FreeCAD.Console.PrintMessage(translate("Arch","Object does not have settable IFC attributes")) else: d = obj.IfcData if "FlagForceBrep" in d: @@ -1525,7 +1525,7 @@ def makeIfcSpreadsheet(archobj=None): archobj.IfcProperties = ifc_spreadsheet return ifc_spreadsheet else : - FreeCAD.Console.PrintWarning(translate("Arch", "The object doesn't have an IfcProperties attribute. Cancel spreadsheet creation for object:")+ ' ' + archobj.Label) + FreeCAD.Console.PrintWarning(translate("Arch", "The object does not have an IfcProperties attribute. Cancel spreadsheet creation for object:")+ ' ' + archobj.Label) FreeCAD.ActiveDocument.removeObject(ifc_spreadsheet) else : return ifc_spreadsheet diff --git a/src/Mod/BIM/ArchComponent.py b/src/Mod/BIM/ArchComponent.py index 836ff2c01b..c78a412dba 100644 --- a/src/Mod/BIM/ArchComponent.py +++ b/src/Mod/BIM/ArchComponent.py @@ -211,7 +211,7 @@ class Component(ArchIFC.IfcProduct): if not "Tag" in pl: obj.addProperty("App::PropertyString","Tag","Component",QT_TRANSLATE_NOOP("App::Property","An optional tag for this component"), locked=True) if not "StandardCode" in pl: - obj.addProperty("App::PropertyString","StandardCode","Component",QT_TRANSLATE_NOOP("App::Property","An optional standard (OmniClass, etc...) code for this component"), locked=True) + obj.addProperty("App::PropertyString","StandardCode","Component",QT_TRANSLATE_NOOP("App::Property","An optional standard (OmniClass, etc…) code for this component"), locked=True) if not "Material" in pl: obj.addProperty("App::PropertyLink","Material","Component",QT_TRANSLATE_NOOP("App::Property","A material for this object"), locked=True) if "BaseMaterial" in pl: @@ -1804,7 +1804,7 @@ class SelectionTaskPanel: def __init__(self): self.baseform = QtGui.QLabel() - self.baseform.setText(QtGui.QApplication.translate("Arch", "Please select a base object", None)) + self.baseform.setText(QtGui.QApplication.translate("Arch", "Select a base object", None)) def getStandardButtons(self): """Adds the cancel button.""" @@ -2157,8 +2157,8 @@ class ComponentTaskPanel: QtGui.QApplication.translate("Arch", "Value", None)]) # set combos - self.ifcEditor.comboProperty.addItems([QtGui.QApplication.translate("Arch", "Add property...", None)]+self.plabels) - self.ifcEditor.comboPset.addItems([QtGui.QApplication.translate("Arch", "Add property set...", None), + self.ifcEditor.comboProperty.addItems([QtGui.QApplication.translate("Arch", "Add property", None)]+self.plabels) + self.ifcEditor.comboPset.addItems([QtGui.QApplication.translate("Arch", "Add property set", None), QtGui.QApplication.translate("Arch", "New...", None)]+self.psetkeys) # set UUID diff --git a/src/Mod/BIM/ArchEquipment.py b/src/Mod/BIM/ArchEquipment.py index ecc819cf55..1d3357b697 100644 --- a/src/Mod/BIM/ArchEquipment.py +++ b/src/Mod/BIM/ArchEquipment.py @@ -190,7 +190,7 @@ class _Equipment(ArchComponent.Component): if not "ProductURL" in pl: obj.addProperty("App::PropertyString","ProductURL","Equipment",QT_TRANSLATE_NOOP("App::Property","The URL of the product page of this equipment"), locked=True) if not "StandardCode" in pl: - obj.addProperty("App::PropertyString","StandardCode","Equipment",QT_TRANSLATE_NOOP("App::Property","A standard code (MasterFormat, OmniClass,...)"), locked=True) + obj.addProperty("App::PropertyString","StandardCode","Equipment",QT_TRANSLATE_NOOP("App::Property","A standard code (MasterFormat, OmniClass,…)"), locked=True) if not "SnapPoints" in pl: obj.addProperty("App::PropertyVectorList","SnapPoints","Equipment",QT_TRANSLATE_NOOP("App::Property","Additional snap points for this equipment"), locked=True) if not "EquipmentPower" in pl: diff --git a/src/Mod/BIM/ArchMaterial.py b/src/Mod/BIM/ArchMaterial.py index 6f589c7e2d..08a976adf2 100644 --- a/src/Mod/BIM/ArchMaterial.py +++ b/src/Mod/BIM/ArchMaterial.py @@ -170,7 +170,7 @@ class _ArchMaterial: if not "Description" in obj.PropertiesList: obj.addProperty("App::PropertyString","Description","Material",QT_TRANSLATE_NOOP("App::Property","A description for this material"), locked=True) if not "StandardCode" in obj.PropertiesList: - obj.addProperty("App::PropertyString","StandardCode","Material",QT_TRANSLATE_NOOP("App::Property","A standard code (MasterFormat, OmniClass,...)"), locked=True) + obj.addProperty("App::PropertyString","StandardCode","Material",QT_TRANSLATE_NOOP("App::Property","A standard code (MasterFormat, OmniClass,…)"), locked=True) if not "ProductURL" in obj.PropertiesList: obj.addProperty("App::PropertyString","ProductURL","Material",QT_TRANSLATE_NOOP("App::Property","A URL where to find information about this material"), locked=True) if not "Transparency" in obj.PropertiesList: diff --git a/src/Mod/BIM/ArchNesting.py b/src/Mod/BIM/ArchNesting.py index d7bb6c2d19..9ffa8acc98 100644 --- a/src/Mod/BIM/ArchNesting.py +++ b/src/Mod/BIM/ArchNesting.py @@ -138,28 +138,28 @@ class Nester: # general conformity tests - print("Executing conformity tests ... ",end="") + print("Executing conformity tests… ",end="") if not self.container: - print("Empty container. Aborting") + print("Empty container. Aborting.") return if not self.shapes: - print("Empty shapes. Aborting") + print("Empty shapes. Aborting.") return if not isinstance(self.container,Part.Face): - print("Container is not a face. Aborting") + print("Container is not a face. Aborting.") return normal = self.container.normalAt(0,0) for s in self.shapes: if not self.update(): return if len(s.Faces) != 1: - print("One of the shapes does not contain exactly one face. Aborting") + print("One of the shapes does not contain exactly one face. Aborting.") return # check if all faces correctly oriented (same normal) if s.Faces[0].normalAt(0,0).getAngle(normal) > TOLERANCE: # let pass faces with inverted normal if s.Faces[0].normalAt(0,0).getAngle(normal)-math.pi > TOLERANCE: - print("One of the face doesn't have the same orientation as the container. Aborting") + print("One of the face does not have the same orientation as the container. Aborting.") return # TODO @@ -208,9 +208,9 @@ class Nester: f = Part.Face(Part.Wire(nedges)) if not f.isValid(): if allLines: - print("Invalid face found in set. Aborting") + print("Invalid face found in set. Aborting.") else: - print("Face distretizing failed. Aborting") + print("Face distretizing failed. Aborting.") return nfaces.append([face[0],f]) faces = nfaces @@ -374,7 +374,7 @@ class Nester: # create the polygon if len(pts) < 3: - print("Error calculating a no-fit polygon. Aborting") + print("Error calculating a no-fit polygon. Aborting.") return pts = [p[0] for p in pts] pol = Part.Face(Part.makePolygon(pts+[pts[0]])) @@ -418,7 +418,7 @@ class Nester: if ff: pol = ff else: - print("Unable to fix invalid no-fit polygon. Aborting") + print("Unable to fix invalid no-fit polygon. Aborting.") Part.show(pol) return @@ -426,7 +426,7 @@ class Nester: # none of the fixes worked. Epic fail. - print("Invalid no-fit polygon. Aborting") + print("Invalid no-fit polygon. Aborting.") Part.show(pol.OuterWire) for p in sheet: Part.show(p[1]) @@ -472,7 +472,7 @@ class Nester: try: pol = Part.Face(w[0]) except Exception: - print("Error merging polygons. Aborting") + print("Error merging polygons. Aborting.") try: Part.show(Part.Wire(edges)) except Exception: @@ -529,7 +529,7 @@ class Nester: rotface = trface break else: - print("Couldn't determine location on sheet. Aborting") + print("Could not determine location on sheet. Aborting.") return # check the X space occupied by this solution @@ -540,7 +540,7 @@ class Nester: available.append([sheetnumber,[hashcode,rotface],bb.XMax,fitpol]) if unfit: - print("One face doesn't fit in the container. Aborting") + print("One face does not fit in the container. Aborting.") return if available: @@ -646,7 +646,7 @@ class Nester: to be given to the final object.""" if not self.indexedfaces: - print("error: shapes were not indexed. Please run() first") + print("error: shapes were not indexed. Use run() first") return if not result: result = [] diff --git a/src/Mod/BIM/ArchPanel.py b/src/Mod/BIM/ArchPanel.py index 2a7008ffc2..77abc9512c 100644 --- a/src/Mod/BIM/ArchPanel.py +++ b/src/Mod/BIM/ArchPanel.py @@ -442,7 +442,7 @@ class _Panel(ArchComponent.Component): if base.Volume < 0: base.reverse() if base.Volume < 0: - FreeCAD.Console.PrintError(translate("Arch","Couldn't compute a shape")) + FreeCAD.Console.PrintError(translate("Arch","Could not compute a shape")) return base = base.removeSplitter() obj.Shape = base diff --git a/src/Mod/BIM/ArchReference.py b/src/Mod/BIM/ArchReference.py index 3374cc730b..17213405b3 100644 --- a/src/Mod/BIM/ArchReference.py +++ b/src/Mod/BIM/ArchReference.py @@ -883,7 +883,7 @@ class ArchReferenceTaskPanel: if self.obj.File: self.fileButton.setText(os.path.basename(self.obj.File)) else: - self.fileButton.setText(translate("Arch","Choose file...")) + self.fileButton.setText(translate("Arch","Choose File")) self.partCombo = QtGui.QComboBox(self.form) self.partCombo.setEnabled(False) layout.addWidget(self.partCombo) diff --git a/src/Mod/BIM/ArchSectionPlane.py b/src/Mod/BIM/ArchSectionPlane.py index a001e44a30..a7073c78d9 100644 --- a/src/Mod/BIM/ArchSectionPlane.py +++ b/src/Mod/BIM/ArchSectionPlane.py @@ -1281,7 +1281,7 @@ class SectionPlaneTaskPanel: if added: self.update() else: - FreeCAD.Console.PrintWarning("Please select objects in the 3D view or in the model tree before pressing the button\n") + FreeCAD.Console.PrintWarning("Select objects in the 3D view or in the model tree before pressing the button\n") def removeElement(self): if self.obj: diff --git a/src/Mod/BIM/ArchStructure.py b/src/Mod/BIM/ArchStructure.py index 72865ccbaa..29291419e0 100644 --- a/src/Mod/BIM/ArchStructure.py +++ b/src/Mod/BIM/ArchStructure.py @@ -203,7 +203,7 @@ class CommandStructuresFromSelection: def GetResources(self): return {'Pixmap': 'Arch_MultipleStructures', 'MenuText': QT_TRANSLATE_NOOP("Arch_StructuresFromSelection", "Multiple Structures"), - 'ToolTip': QT_TRANSLATE_NOOP("Arch_StructuresFromSelection", "Create multiple BIM Structures from a selected base, using each selected edge as an extrusion path")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_StructuresFromSelection", "Creates multiple BIM Structures from a selected base, using each selected edge as an extrusion path")} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -229,7 +229,7 @@ class CommandStructuresFromSelection: FreeCAD.ActiveDocument.commitTransaction() FreeCAD.ActiveDocument.recompute() else: - FreeCAD.Console.PrintError(translate("Arch", "Please select the base object first and then the edges to use as extrusion paths") + "\n") + FreeCAD.Console.PrintError(translate("Arch", "Select the base object first and then the edges to use as extrusion paths") + "\n") class CommandStructuralSystem: @@ -263,7 +263,7 @@ class CommandStructuralSystem: FreeCAD.ActiveDocument.commitTransaction() FreeCAD.ActiveDocument.recompute() else: - FreeCAD.Console.PrintError(translate("Arch", "Please select at least an axis object") + "\n") + FreeCAD.Console.PrintError(translate("Arch", "Select at least an axis object") + "\n") class _CommandStructure: @@ -856,7 +856,7 @@ class _Structure(ArchComponent.Component): try: shi = evi.makePipe(shi) except Part.OCCError: - FreeCAD.Console.PrintError(translate("Arch","Error: The base shape couldn't be extruded along this tool object")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Error: The base shape could not be extruded along this tool object")+"\n") return base.append(shi) extrusion_length += evi.Length @@ -1364,7 +1364,7 @@ class StructureTaskPanel(ArchComponent.ComponentTaskPanel): self.selectToolButton = QtGui.QPushButton(self.extrusion_widget) self.selectToolButton.setIcon(QtGui.QIcon()) - self.selectToolButton.setText(QtGui.QApplication.translate("Arch", "Select tool...", None)) + self.selectToolButton.setText(QtGui.QApplication.translate("Arch", "Select Tool", None)) self.selectToolButton.setToolTip(QtGui.QApplication.translate("Arch", "Select object or edges to be used as a Tool (extrusion path)", None)) lay.addWidget(self.selectToolButton) QtCore.QObject.connect(self.selectToolButton, QtCore.SIGNAL("clicked()"), self.setSelectionFromTool) @@ -1498,7 +1498,7 @@ class StructureTaskPanel(ArchComponent.ComponentTaskPanel): self.Object.Tool = objectList QtCore.QObject.disconnect(self.selectToolButton, QtCore.SIGNAL("clicked()"), self.setToolFromSelection) QtCore.QObject.connect(self.selectToolButton, QtCore.SIGNAL("clicked()"), self.setSelectionFromTool) - self.selectToolButton.setText(QtGui.QApplication.translate("Arch", "Select tool...", None)) + self.selectToolButton.setText(QtGui.QApplication.translate("Arch", "Select Tool", None)) def accept(self): @@ -1588,7 +1588,7 @@ class _StructuralSystem(ArchComponent.Component): # OBSOLETE - All Arch objects if base.Volume < 0: base.reverse() if base.Volume < 0: - FreeCAD.Console.PrintError(translate("Arch","Couldn't compute a shape")) + FreeCAD.Console.PrintError(translate("Arch","Could not compute a shape")) return base = base.removeSplitter() obj.Shape = base @@ -1648,7 +1648,7 @@ if FreeCAD.GuiUp: def GetCommands(self): return ("Arch_Structure", "Arch_StructuralSystem", "Arch_StructuresFromSelection") def GetResources(self): - return { "MenuText": QT_TRANSLATE_NOOP("Arch_StructureTools", "Structure tools"), + return { "MenuText": QT_TRANSLATE_NOOP("Arch_StructureTools", "Structure Tools"), "ToolTip": QT_TRANSLATE_NOOP("Arch_StructureTools", "Structure tools") } def IsActive(self): diff --git a/src/Mod/BIM/BimStatus.py b/src/Mod/BIM/BimStatus.py index 24f1e031e1..577eeb3e84 100644 --- a/src/Mod/BIM/BimStatus.py +++ b/src/Mod/BIM/BimStatus.py @@ -42,7 +42,7 @@ def setStatusIcons(show=True): from PySide import QtCore, QtGui nudgeLabelsI = [ - translate("BIM", "Custom..."), + translate("BIM", "Custom…"), '1/16"', '1/8"', '1/4"', @@ -52,7 +52,7 @@ def setStatusIcons(show=True): translate("BIM", "Auto"), ] nudgeLabelsM = [ - translate("BIM", "Custom..."), + translate("BIM", "Custom…"), "1 mm", "5 mm", "1 cm", diff --git a/src/Mod/BIM/Dice3DS/dom3ds.py b/src/Mod/BIM/Dice3DS/dom3ds.py index 278dcd4888..38d6bbc126 100644 --- a/src/Mod/BIM/Dice3DS/dom3ds.py +++ b/src/Mod/BIM/Dice3DS/dom3ds.py @@ -707,7 +707,7 @@ class TrackChunk(ChunkBase): for typ,attr in self.keyframe_fields: flo.write("%s %s = %r\n" % (indent,attr,getattr(kf,attr))) if n < self.nkeys: - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) # @@ -1008,7 +1008,7 @@ class POINT_ARRAY(ArrayChunk): % (indent,self.array[i,0],self.array[i,1], self.array[i,2])) if n < self.npoints: - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) def write_array(self): s = numpy.array(self.array).astype(numpy.float32) return array_to_string_destructive(s) @@ -1048,7 +1048,7 @@ class FACE_ARRAY(ArrayChunk): % (indent,self.array[i,0],self.array[i,1], self.array[i,2],self.array[i,3])) if n < self.nfaces: - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) def write_array(self): s = numpy.array(self.array).astype(numpy.uint16) return array_to_string_destructive(s) @@ -1070,7 +1070,7 @@ class MSH_MAT_GROUP(ArrayChunk): for i in range(n): flo.write("%s %10d\n" % (indent,self.array[i])) if n < self.mfaces: - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) def write_array(self): s = numpy.array(self.array).astype(numpy.uint16) return array_to_string_destructive(s) @@ -1096,7 +1096,7 @@ class TEX_VERTS(ArrayChunk): flo.write("%s %12.4g%12.4g\n" % (indent,self.array[i,0],self.array[i,1])) if n < self.npoints: - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) def write_array(self): s = numpy.array(self.array).astype(numpy.float32) return array_to_string_destructive(s) @@ -1117,7 +1117,7 @@ class SMOOTH_GROUP(ArrayChunk): for i in range(n): flo.write("%s %10d\n" % (indent,self.array[i])) if n < len(self.array): - flo.write("%s ...\n" % indent) + flo.write("%s …\n" % indent) def write_array(self): s = numpy.array(self.array).astype(numpy.uint32) return array_to_string_destructive(s) diff --git a/src/Mod/BIM/InitGui.py b/src/Mod/BIM/InitGui.py index 96f028c7d9..368523ad73 100644 --- a/src/Mod/BIM/InitGui.py +++ b/src/Mod/BIM/InitGui.py @@ -56,7 +56,7 @@ class BIMWorkbench(Workbench): # Load Arch & Draft preference pages self.loadPreferences() - Log("Loading BIM module... done\n") + Log("Loading BIM module… done\n") FreeCADGui.updateLocale() @@ -265,7 +265,7 @@ class BIMWorkbench(Workbench): def GetCommands(self): return self.tools def GetResources(self): - t = QT_TRANSLATE_NOOP("BIM_GenericTools", "Generic 3D tools") + t = QT_TRANSLATE_NOOP("BIM_GenericTools", "Generic 3D Tools") return { "MenuText": t, "ToolTip": t, "Icon": "BIM_Box"} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -280,7 +280,7 @@ class BIMWorkbench(Workbench): def GetCommands(self): return self.tools def GetResources(self): - t = QT_TRANSLATE_NOOP("BIM_Create2DViews", "Create 2D views") + t = QT_TRANSLATE_NOOP("BIM_Create2DViews", "Create 2D Views") return { "MenuText": t, "ToolTip": t, "Icon": "BIM_DrawingView"} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -304,7 +304,7 @@ class BIMWorkbench(Workbench): def GetResources(self): return { "MenuText": QT_TRANSLATE_NOOP( - "Arch_RebarTools", "Reinforcement tools" + "Arch_RebarTools", "Reinforcement Tools" ), "ToolTip": QT_TRANSLATE_NOOP( "Arch_RebarTools", "Reinforcement tools" @@ -319,7 +319,7 @@ class BIMWorkbench(Workbench): FreeCADGui.addCommand("Arch_RebarTools", RebarGroupCommand()) self.bimtools[self.bimtools.index("Arch_Rebar")] = "Arch_RebarTools" RebarTools.load_translations() - Log("Load Reinforcement Module...done\n") + Log("Load Reinforcement Module… done\n") if hasattr(RebarTools, "updateLocale"): RebarTools.updateLocale() #self.rebar = RebarTools.RebarCommands + ["Arch_Rebar"] @@ -412,15 +412,15 @@ class BIMWorkbench(Workbench): # create toolbars - t1 = QT_TRANSLATE_NOOP("Workbench", "Drafting tools") - t2 = QT_TRANSLATE_NOOP("Workbench", "Draft snap") - t3 = QT_TRANSLATE_NOOP("Workbench", "3D/BIM tools") - t4 = QT_TRANSLATE_NOOP("Workbench", "Annotation tools") - t5 = QT_TRANSLATE_NOOP("Workbench", "2D modification tools") - t6 = QT_TRANSLATE_NOOP("Workbench", "Manage tools") - t7 = QT_TRANSLATE_NOOP("Workbench", "General modification tools") - t8 = QT_TRANSLATE_NOOP("Workbench", "Object modification tools") - t9 = QT_TRANSLATE_NOOP("Workbench", "3D modification tools") + t1 = QT_TRANSLATE_NOOP("Workbench", "Drafting Tools") + t2 = QT_TRANSLATE_NOOP("Workbench", "Draft Snap") + t3 = QT_TRANSLATE_NOOP("Workbench", "3D/BIM Tools") + t4 = QT_TRANSLATE_NOOP("Workbench", "Annotation Tools") + t5 = QT_TRANSLATE_NOOP("Workbench", "2D Tools") + t6 = QT_TRANSLATE_NOOP("Workbench", "Manage Tools") + t7 = QT_TRANSLATE_NOOP("Workbench", "General Tools") + t8 = QT_TRANSLATE_NOOP("Workbench", "Object Tools") + t9 = QT_TRANSLATE_NOOP("Workbench", "3D Tools") self.appendToolbar(t1, self.draftingtools) self.appendToolbar(t2, self.snapbar) self.appendToolbar(t3, self.bimtools) @@ -435,7 +435,7 @@ class BIMWorkbench(Workbench): t1 = QT_TRANSLATE_NOOP("Workbench", "&2D Drafting") t2 = QT_TRANSLATE_NOOP("Workbench", "&3D/BIM") - t3 = QT_TRANSLATE_NOOP("Workbench", "Reinforcement tools") + t3 = QT_TRANSLATE_NOOP("Workbench", "Reinforcement Tools") t4 = QT_TRANSLATE_NOOP("Workbench", "&Annotation") t5 = QT_TRANSLATE_NOOP("Workbench", "&Snapping") t6 = QT_TRANSLATE_NOOP("Workbench", "&Modify") diff --git a/src/Mod/BIM/OfflineRenderingUtils.py b/src/Mod/BIM/OfflineRenderingUtils.py index 5e1b866f6f..5bede0d08c 100755 --- a/src/Mod/BIM/OfflineRenderingUtils.py +++ b/src/Mod/BIM/OfflineRenderingUtils.py @@ -582,7 +582,7 @@ def save(document,filename=None,guidata=None,colors=None,camera=None): filename = document.FileName document.save() else: - print("Unable to save this document. Please provide a file name") + print("Unable to save this document. Provide a file name") return if guidata: @@ -636,7 +636,7 @@ def buildGuiDocumentFromColors(document,colors,camera=None): guidoc = "\n" guidoc += "\n" guidoc += "\n" @@ -715,7 +715,7 @@ def buildGuiDocumentFromGuiData(document,guidata): guidoc = "\n" guidoc += "\n" guidoc += "\n" diff --git a/src/Mod/BIM/Resources/ui/ArchMaterial.ui b/src/Mod/BIM/Resources/ui/ArchMaterial.ui index 5b9220a932..e83e7dfbb5 100644 --- a/src/Mod/BIM/Resources/ui/ArchMaterial.ui +++ b/src/Mod/BIM/Resources/ui/ArchMaterial.ui @@ -11,7 +11,7 @@ - BIM material + BIM Material @@ -27,7 +27,7 @@ - Choose preset... + Choose preset @@ -45,7 +45,7 @@ - Copy existing... + Copy existing… @@ -136,7 +136,7 @@ - Section Color + Section color @@ -188,7 +188,7 @@ - A standard (MasterFormat, Omniclass...) code for this material + A standard (MasterFormat, Omniclass…) code for this material diff --git a/src/Mod/BIM/Resources/ui/ArchMultiMaterial.ui b/src/Mod/BIM/Resources/ui/ArchMultiMaterial.ui index 92266191c8..74599be952 100644 --- a/src/Mod/BIM/Resources/ui/ArchMultiMaterial.ui +++ b/src/Mod/BIM/Resources/ui/ArchMultiMaterial.ui @@ -11,14 +11,14 @@ - Multi-material definition + Multi-Material Definition - Copy existing... + Copy existing… @@ -34,7 +34,7 @@ - Name: + Name @@ -46,7 +46,7 @@ - Composition: + Composition diff --git a/src/Mod/BIM/Resources/ui/ArchNest.ui b/src/Mod/BIM/Resources/ui/ArchNest.ui index 0047ce211a..5c7a943a4b 100644 --- a/src/Mod/BIM/Resources/ui/ArchNest.ui +++ b/src/Mod/BIM/Resources/ui/ArchNest.ui @@ -33,7 +33,7 @@ - Pick selected + Pick Selected @@ -54,7 +54,7 @@ - Add selected + Add Selected @@ -106,7 +106,7 @@ - The number of segments to divide non-linear edges into, for calculations. If curved shapes overlap, try raising this value + The number of segments to divide non-linear edges into for calculations. If curved shapes overlap, try raising this value diff --git a/src/Mod/BIM/Resources/ui/ArchSchedule.ui b/src/Mod/BIM/Resources/ui/ArchSchedule.ui index d915300fc4..83eb2e75d9 100644 --- a/src/Mod/BIM/Resources/ui/ArchSchedule.ui +++ b/src/Mod/BIM/Resources/ui/ArchSchedule.ui @@ -11,7 +11,7 @@ - Schedule definition + Schedule Definition @@ -19,7 +19,7 @@ - Schedule name: + Schedule name @@ -82,7 +82,7 @@ retrieved. Unit - An optional unit to express the resulting value. Ex: m^3 (you can also write m³ or m3) + Optional unit for the result, e.g. m³, m^3, or m3 @@ -111,7 +111,7 @@ of that project, no matter if they are expanded or not. An optional semicolon (;) separated list of property:value filters. Prepend ! to a property name to invert the effect of the filter (exclude objects that match the filter). Objects whose property contains the value will be matched. -Examples of valid filters (everything is case-insensitive): Name:Wall - Will only consider objects with 'wall' in their name (internal name); !Name:Wall - Will only consider objects which DON'T have 'wall' in their name (internal name); Description:Win - Will only consider objects with 'win' in their description; !Label:Win - Will only consider objects which DO NOT have 'win' in their label; IfcType:Wall - Will only consider objects which Ifc Type is 'Wall'; !Tag:Wall - Will only consider objects which tag is NOT 'Wall'. If you leave this field empty, no filtering is applied +Examples of valid filters (everything is case-insensitive): Name:Wall - Will only consider objects with 'wall' in their name (internal name); !Name:Wall - Will only consider objects which DO NOT have 'wall' in their name (internal name); Description:Win - Will only consider objects with 'win' in their description; !Label:Win - Will only consider objects which DO NOT have 'win' in their label; IfcType:Wall - Will only consider objects which Ifc Type is 'Wall'; !Tag:Wall - Will only consider objects which tag is NOT 'Wall'. If you leave this field empty, no filtering is applied When dealing with native IFC objects, you can use FreeCAD properties name, ex: 'Class:IfcWall' or any other IFC attribute (ex. 'IsTypedBy:#455'). If the 'Objects' column has been set to an IFC project or document, all the IFC entities of that project will be considered. @@ -146,7 +146,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: ' If this is enabled, the schedule and the associated spreadsheet are updated whenever the document is recomputed. - Auto update + Auto-update @@ -160,7 +160,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: ' Adds a line below the selected line/cell - Add row + Add Row @@ -174,7 +174,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: ' Deletes the selected line - Del row + Del Row @@ -202,7 +202,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: ' Put selected objects into the 'Objects' column of the selected row - Add selection + Add Selection @@ -223,7 +223,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: ' - This exports the results to a CSV or Markdown file. Note for CSV export: In Libreoffice, you can keep this CSV file linked by right-clicking the Sheets tab bar, New sheet, From file, Link (Note: as of LibreOffice v6.x the correct path now is: Sheet, Insert Sheet..., From file, Browse...) + Exports results to a CSV or Markdown file. For CSV export in LibreOffice: maintain a live link by right-clicking the Sheets tab bar → New Sheet → From File → Link. In LibreOffice v6.x and later: use Sheet → Insert Sheet… → From File → Browse… Export diff --git a/src/Mod/BIM/Resources/ui/BimServerTaskPanel.ui b/src/Mod/BIM/Resources/ui/BimServerTaskPanel.ui index c1a86f66f2..d20181499c 100644 --- a/src/Mod/BIM/Resources/ui/BimServerTaskPanel.ui +++ b/src/Mod/BIM/Resources/ui/BimServerTaskPanel.ui @@ -11,7 +11,7 @@ - BimServer + BIM Server @@ -25,7 +25,7 @@ - The name of the BIM Server you are currently connecting to. Change settings in the BIM preferences + Name of the currently connected BIM Server. Settings can be adjusted in BIM preferences. BIM Server @@ -76,7 +76,7 @@ - Open in browser + Open in Browser @@ -112,7 +112,7 @@ - Available revisions: + Available revisions @@ -161,7 +161,7 @@ - Root object: + Root object diff --git a/src/Mod/BIM/Resources/ui/DialogBimServerLogin.ui b/src/Mod/BIM/Resources/ui/DialogBimServerLogin.ui index a1676cacaf..663e728383 100644 --- a/src/Mod/BIM/Resources/ui/DialogBimServerLogin.ui +++ b/src/Mod/BIM/Resources/ui/DialogBimServerLogin.ui @@ -19,7 +19,7 @@ - BimServer URL: + BIM server URL @@ -33,7 +33,7 @@ - Login (email): + Login (email) @@ -47,7 +47,7 @@ - Password: + Password @@ -59,7 +59,7 @@ - Keep me logged in across FreeCAD sessions + Stay logged in across FreeCAD sessions diff --git a/src/Mod/BIM/Resources/ui/GitTaskPanel.ui b/src/Mod/BIM/Resources/ui/GitTaskPanel.ui index 8781adc2f4..00287ebd42 100644 --- a/src/Mod/BIM/Resources/ui/GitTaskPanel.ui +++ b/src/Mod/BIM/Resources/ui/GitTaskPanel.ui @@ -61,7 +61,7 @@ - List of files to be committed: + List of files to be committed @@ -97,7 +97,7 @@ - Select all + Select All diff --git a/src/Mod/BIM/Resources/ui/dialogAddProperty.ui b/src/Mod/BIM/Resources/ui/dialogAddProperty.ui index ffaf8c8c79..846a4c43d1 100644 --- a/src/Mod/BIM/Resources/ui/dialogAddProperty.ui +++ b/src/Mod/BIM/Resources/ui/dialogAddProperty.ui @@ -11,7 +11,7 @@ - Add IFC property + Add IFC Property diff --git a/src/Mod/BIM/Resources/ui/dialogClasses.ui b/src/Mod/BIM/Resources/ui/dialogClasses.ui index 4699d258f5..424fc8147e 100644 --- a/src/Mod/BIM/Resources/ui/dialogClasses.ui +++ b/src/Mod/BIM/Resources/ui/dialogClasses.ui @@ -11,7 +11,7 @@ - classManager + Class Manager diff --git a/src/Mod/BIM/Resources/ui/dialogClassification.ui b/src/Mod/BIM/Resources/ui/dialogClassification.ui index de2ce45e70..3a5b385c1e 100644 --- a/src/Mod/BIM/Resources/ui/dialogClassification.ui +++ b/src/Mod/BIM/Resources/ui/dialogClassification.ui @@ -11,7 +11,7 @@ - Classification manager + Classification Manager @@ -57,7 +57,7 @@ - Sort by: + Sort by @@ -117,7 +117,7 @@ - Object / Material + Object/Material @@ -176,7 +176,7 @@ Apply the selected class to selected objects - << Apply to selected + << Apply to Selected @@ -186,7 +186,7 @@ Use this class as object name - << Set as name + << Set as Name diff --git a/src/Mod/BIM/Resources/ui/dialogConvertDocument.ui b/src/Mod/BIM/Resources/ui/dialogConvertDocument.ui index ba3e083a58..fa6de9c122 100644 --- a/src/Mod/BIM/Resources/ui/dialogConvertDocument.ui +++ b/src/Mod/BIM/Resources/ui/dialogConvertDocument.ui @@ -11,13 +11,13 @@ - Single IFC document + Single IFC Document - Do you wish to convert this document to an IFC document? Replying 'Yes' will automatically turn all new objects to IFC, while 'No' will allow you to have both IFC and non-IFC elements in the file. + Convert this document to an IFC document? Selecting 'Yes' will enable automatic creation of IFC objects. Selecting 'No' will allow a mix of IFC and non-IFC elements within the file. true @@ -27,7 +27,7 @@ - Add a default building structure (IfcSite, IfcBuilding and IfcBuildingStorey). You can also add the structure manually later. + Adds a default building structure consisting of IfcSite, IfcBuilding, and IfcBuildingStorey. The structure can also be added manually at a later stage. Also create a default structure @@ -37,10 +37,7 @@ - If this is checked, you won't be asked again when creating a new FreeCAD document, -and that document won't be turned into an IFC document automatically. -You can still turn a FreeCAD document into an IFC document manually, using -Utils -> Make IFC project + Prevents further prompts when creating new FreeCAD documents. New documents will not be converted to IFC automatically, but conversion remains possible later via Utils → Make IFC Project. Do not ask again diff --git a/src/Mod/BIM/Resources/ui/dialogConvertType.ui b/src/Mod/BIM/Resources/ui/dialogConvertType.ui index d846f5f083..f6c8e1b4f8 100644 --- a/src/Mod/BIM/Resources/ui/dialogConvertType.ui +++ b/src/Mod/BIM/Resources/ui/dialogConvertType.ui @@ -11,7 +11,7 @@ - Convert to IFC type + Convert to IFC Type diff --git a/src/Mod/BIM/Resources/ui/dialogCreateProject.ui b/src/Mod/BIM/Resources/ui/dialogCreateProject.ui index d1fb7d546b..fb0491083e 100644 --- a/src/Mod/BIM/Resources/ui/dialogCreateProject.ui +++ b/src/Mod/BIM/Resources/ui/dialogCreateProject.ui @@ -11,13 +11,13 @@ - Default structure + Default Structure - Create a default structure (IfcProject, IfcSite, IfcBuilding and IfcBuildingStorey)? Replying "No" will only create an IfcProject. You can then add the structure manually later. + Create a default structure (IfcProject, IfcSite, IfcBuilding and IfcBuildingStorey)? Replying "No" will only create an IfcProject. The structure can be added manually later. true diff --git a/src/Mod/BIM/Resources/ui/dialogCustomProperties.ui b/src/Mod/BIM/Resources/ui/dialogCustomProperties.ui index d9efe96209..dba0a94f7d 100644 --- a/src/Mod/BIM/Resources/ui/dialogCustomProperties.ui +++ b/src/Mod/BIM/Resources/ui/dialogCustomProperties.ui @@ -11,7 +11,7 @@ - Custom properties + Custom Properties @@ -41,14 +41,14 @@ - A description for this property, can be in any language. + A description of this property. Supports any language. - The property will be hidden in the interface, and can only be modified via Python script + The property will be hidden in the interface, and can only be modified via Python scripting Hidden diff --git a/src/Mod/BIM/Resources/ui/dialogDiff.ui b/src/Mod/BIM/Resources/ui/dialogDiff.ui index ced4c738a9..189e51cecc 100644 --- a/src/Mod/BIM/Resources/ui/dialogDiff.ui +++ b/src/Mod/BIM/Resources/ui/dialogDiff.ui @@ -11,7 +11,7 @@ - IFC diff + IFC Difference diff --git a/src/Mod/BIM/Resources/ui/dialogExport.ui b/src/Mod/BIM/Resources/ui/dialogExport.ui index 2b2fd8701d..6f9467aea4 100644 --- a/src/Mod/BIM/Resources/ui/dialogExport.ui +++ b/src/Mod/BIM/Resources/ui/dialogExport.ui @@ -17,7 +17,7 @@ - One or more IFC documents contained in this FreeCAD document have been modified, but were not saved. They will automatically be saved now. + One or more IFC documents contained in this FreeCAD document have been modified, but were not saved. They will automatically be saved now. true @@ -27,7 +27,7 @@ - Ask me again next time + Ask again next time true diff --git a/src/Mod/BIM/Resources/ui/dialogIfcElements.ui b/src/Mod/BIM/Resources/ui/dialogIfcElements.ui index dc86e7cbce..c954966694 100644 --- a/src/Mod/BIM/Resources/ui/dialogIfcElements.ui +++ b/src/Mod/BIM/Resources/ui/dialogIfcElements.ui @@ -27,7 +27,7 @@ - only visible BIM objects + Only visible BIM objects @@ -36,7 +36,7 @@ - order by: + Order by @@ -98,14 +98,14 @@ - Change type to: + Change type - Change material to: + Change material diff --git a/src/Mod/BIM/Resources/ui/dialogIfcProperties.ui b/src/Mod/BIM/Resources/ui/dialogIfcProperties.ui index 784f5d0277..3074158b44 100644 --- a/src/Mod/BIM/Resources/ui/dialogIfcProperties.ui +++ b/src/Mod/BIM/Resources/ui/dialogIfcProperties.ui @@ -17,7 +17,7 @@ - This dialog allows you to display and manage IFC properties attached to BIM objects. Only properties and sets present in all selected objects will be displayed and editable. + Display and manage IFC properties common to all selected BIM objects true @@ -47,7 +47,7 @@ - Order by: + Order by @@ -108,7 +108,7 @@ - Search for a property or property set: + Search for a property or property set @@ -147,7 +147,7 @@ - List of IFC properties for the selected objects. Double-click to edit, drag and drop to reorganize + List of IFC properties for the selected objects. Double-click to edit. Drag and drop to reorganize. true @@ -179,7 +179,7 @@ - Delete selected property/set + Delete Selected Property/Set diff --git a/src/Mod/BIM/Resources/ui/dialogIfcPropertiesRedux.ui b/src/Mod/BIM/Resources/ui/dialogIfcPropertiesRedux.ui index 7a7efcf2d1..22c9175e5f 100644 --- a/src/Mod/BIM/Resources/ui/dialogIfcPropertiesRedux.ui +++ b/src/Mod/BIM/Resources/ui/dialogIfcPropertiesRedux.ui @@ -11,7 +11,7 @@ - IFC properties editor + IFC Properties Editor @@ -19,7 +19,7 @@ - IFC UUID: + IFC UUID @@ -35,7 +35,7 @@ - List of IFC properties for this object. Double-click to edit, drag and drop to reorganize + List of IFC properties for this object. Double-click to edit. Drag and drop to reorganize. true @@ -80,7 +80,7 @@ - Force export full FreeCAD parametric data + Force export of full FreeCAD parametric data diff --git a/src/Mod/BIM/Resources/ui/dialogIfcQuantities.ui b/src/Mod/BIM/Resources/ui/dialogIfcQuantities.ui index d41cb08ba9..db56ffa540 100644 --- a/src/Mod/BIM/Resources/ui/dialogIfcQuantities.ui +++ b/src/Mod/BIM/Resources/ui/dialogIfcQuantities.ui @@ -27,7 +27,7 @@ - only visible BIM objects + Only visible BIM objects @@ -77,7 +77,7 @@ - Select all + Select All diff --git a/src/Mod/BIM/Resources/ui/dialogImport.ui b/src/Mod/BIM/Resources/ui/dialogImport.ui index e4609879d8..e5ce66ebd4 100644 --- a/src/Mod/BIM/Resources/ui/dialogImport.ui +++ b/src/Mod/BIM/Resources/ui/dialogImport.ui @@ -11,7 +11,7 @@ - IFC import options + IFC Import Options @@ -48,7 +48,7 @@ - This defines how the IFC data is stored in the FreeCAD document. 'Single IFC document' means that the FreeCAD document is the IFC document, anything you create in it belongs to the IFC document too. 'Use IFC document object' means that an object will be created inside the FreeCAD document to represent the IFC document. You will be able to add non-IFC objects alongside. + Defines how IFC data is stored in the FreeCAD document. Single IFC document" treats the FreeCAD document itself as the IFC document, with all created content belonging to it. Use IFC document object" creates a separate object representing the IFC document, allowing both IFC and non-IFC content to coexist. @@ -96,7 +96,7 @@ - No 3D representation at all + No 3D representation @@ -156,10 +156,10 @@ - If this is unchecked, these settings will be applied automatically next time. You can change this later under menu Edit -> Preferences -> BIM -> Native IFC + If this is unchecked, these settings will be applied automatically next time. This can be changed later under menu Edit -> Preferences -> BIM -> Native IFC - Ask me again next time + Ask again next time false diff --git a/src/Mod/BIM/Resources/ui/dialogLayersIFC.ui b/src/Mod/BIM/Resources/ui/dialogLayersIFC.ui index 20af47b065..06b531b990 100644 --- a/src/Mod/BIM/Resources/ui/dialogLayersIFC.ui +++ b/src/Mod/BIM/Resources/ui/dialogLayersIFC.ui @@ -11,7 +11,7 @@ - Layers manager + Layers Manager @@ -50,14 +50,14 @@ - Select all + Select All - Toggle on/off + Toggle On/Off diff --git a/src/Mod/BIM/Resources/ui/dialogLibrary.ui b/src/Mod/BIM/Resources/ui/dialogLibrary.ui index a9e58d3063..f383d12643 100644 --- a/src/Mod/BIM/Resources/ui/dialogLibrary.ui +++ b/src/Mod/BIM/Resources/ui/dialogLibrary.ui @@ -11,7 +11,7 @@ - Library browser + Library Browser @@ -46,7 +46,7 @@ - Links the selected object in the current document. Only works in Offline mode + Links the selected object in the current document. Only works in offline mode. Link @@ -60,7 +60,7 @@ - Search: + Search @@ -80,7 +80,7 @@ - ... + @@ -190,7 +190,7 @@ - If this is checked, the library doesn't need to be installed. Contents will be fetched online. + Allows the library to be fetched online instead of requiring local installation. Online mode @@ -206,14 +206,14 @@ Open the search results inside FreeCAD's web browser instead of the system browser - Open search in FreeCAD web view + Search using FreeCAD's web view - Opens a 3D preview of the selected file. + Opens a 3D preview of the selected file Preview model in 3D view @@ -259,7 +259,7 @@ - Save as... + Save As… diff --git a/src/Mod/BIM/Resources/ui/dialogMaterialChooser.ui b/src/Mod/BIM/Resources/ui/dialogMaterialChooser.ui index ed052beb12..63ab313303 100644 --- a/src/Mod/BIM/Resources/ui/dialogMaterialChooser.ui +++ b/src/Mod/BIM/Resources/ui/dialogMaterialChooser.ui @@ -11,7 +11,7 @@ - Choose a material + Choose a Material diff --git a/src/Mod/BIM/Resources/ui/dialogNudgeValue.ui b/src/Mod/BIM/Resources/ui/dialogNudgeValue.ui index 5239550bee..f61094ef7d 100644 --- a/src/Mod/BIM/Resources/ui/dialogNudgeValue.ui +++ b/src/Mod/BIM/Resources/ui/dialogNudgeValue.ui @@ -17,7 +17,7 @@ - New nudge value: + New nudge value diff --git a/src/Mod/BIM/Resources/ui/dialogPhases.ui b/src/Mod/BIM/Resources/ui/dialogPhases.ui index 8a638231cd..f2974e869a 100644 --- a/src/Mod/BIM/Resources/ui/dialogPhases.ui +++ b/src/Mod/BIM/Resources/ui/dialogPhases.ui @@ -17,7 +17,7 @@ - Below are the phases currently configured for this model: + Below are the phases currently configured for this model true @@ -45,7 +45,7 @@ - Add... + Add diff --git a/src/Mod/BIM/Resources/ui/dialogPreflight.ui b/src/Mod/BIM/Resources/ui/dialogPreflight.ui index 9783414966..56e5dbfc11 100644 --- a/src/Mod/BIM/Resources/ui/dialogPreflight.ui +++ b/src/Mod/BIM/Resources/ui/dialogPreflight.ui @@ -17,7 +17,7 @@ - <html><head/><body><p>The following test will check your model or the selected object(s) and their children for conformity to some IFC standards.</p><p><span style=" font-weight:600;">Important</span>: None of the failed tests below will prevent exporting IFC files, nor do these tests guarantee that your IFC files meets some specific quality or standard requirement. They are there to help you assess what is and what is not in your exported file. It's for you to choose which item is of importance to you or not. Hovering the mouse over each description will give you more information to decide.</p><p>After a test is run, clicking the corresponding button will give you more information to help you to fix problems.</p><p>The <a href="http://www.buildingsmart-tech.org/specifications"><span style=" text-decoration: underline; color:#0000ff;">official IFC website</span></a> contains a lot of useful information about IFC standards.</p></body></html> + <html><head/><body><p>The following test will check the model or the selected object(s) and their children for conformity to IFC standards.</p><p><span style=" font-weight:600;">Important</span>: None of the failed tests below will prevent exporting IFC files, nor do these tests guarantee that the IFC files meets some specific quality or standard requirement. They are there to assess which elements are included or excluded from the exported file. Choose which item is of importance manually. Hovering the mouse over each description will show more information.</p><p>After a test is run, clicking the corresponding button will show more information to help fix the problems.</p><p>The <a href="http://www.buildingsmart-tech.org/specifications"><span style=" text-decoration: underline; color:#0000ff;">official IFC website</span></a> contains a lot of useful information about IFC standards.</p></body></html> true @@ -27,10 +27,10 @@ - Warning, this can take some time! + Warning, this may take a large amount of time! - Run all tests + Run All Tests @@ -70,13 +70,13 @@ - IFC export + IFC Export - <html><head/><body><p>IFC export in FreeCAD is performed by an open-source third-party library called IfcOpenShell. To be able to export to the newer IFC4 standard, IfcOpenShell must have been compiled with IFC4 support enabled. This test will check if IFC4 support is available in your version of IfcOpenShell. If not, you will only be able to export IFC files in the older IFC2x3 standard. Note that some applications out there still have incomplete or inexistent IFC4 support, so in some cases IFC2x3 might still work better.</p></body></html> + <html><head/><body><p>IFC export in FreeCAD is performed by an open-source third-party library called IfcOpenShell. To be able to export to the newer IFC4 standard, IfcOpenShell must have been compiled with IFC4 support enabled. This test will check if IFC4 support is available in the installed version of IfcOpenShell. If not, FreeCAD will only export IFC files in the older IFC2x3 standard. Note that some applications out there still have incomplete or inexistent IFC4 support, so in some cases IFC2x3 might still work better.</p></body></html> Is IFC4 support enabled? @@ -99,7 +99,7 @@ - Project structure + Project Structure @@ -112,7 +112,7 @@ - <html><head/><body><p>All IfcBuildingStorey (levels) elements are required to be inside an IfcBuilding element. This is a mandatory requirement of the IFC standard. When exporting your FreeCAD model to IFC, a default IfcBuilding will be created for all level objects (BuildingPart objects with their IFC role set as Building Storey) found that are not inside a Building. However, it is best if you create that building yourself, so you have more control over its name and properties. This test is here to help you to find those levels without buildings.</p></body></html> + <html><head/><body><p>All IfcBuildingStorey (levels) elements are required to be inside an IfcBuilding element. This is a mandatory requirement of the IFC standard. When exporting the FreeCAD model to IFC, a default IfcBuilding will be created for all level objects (BuildingPart objects with their IFC role set as Building Storey) found that are not inside a Building. However, it is best to manually create that building, to have more control over its name and properties. This test is here to help find those levels without buildings.</p></body></html> Are all storeys part of a building? @@ -125,7 +125,7 @@ - <html><head/><body><p>All elements derived from IfcProduct (that is, all the BIM elements that compose your model) are required to be inside an IfcBuildingStorey (level) element. This is a mandatory requirement of the IFC standard. When exporting your FreeCAD model to IFC, a default IfcBuildingStorey will be created for all BIM objects found that are not inside one already. However, it is best if you make sure yourself that all elements are correctly located inside a level, so you have more control over it. This test is here to help you to find those BIM objects without a level.</p></body></html> + <html><head/><body><p>All elements derived from IfcProduct (that is, all the BIM elements that compose the model) are required to be inside an IfcBuildingStorey (level) element. This is a mandatory requirement of the IFC standard. When exporting the FreeCAD model to IFC, a default IfcBuildingStorey will be created for all BIM objects found that are not inside one already. However, it is best to check that all elements are correctly located inside a level to have more control over it. This test is here to help find those BIM objects without a level.</p></body></html> Are all BIM objects part of a level? @@ -145,7 +145,7 @@ - <html><head/><body><p>All IfcBuilding elements are required to be inside an IfcSite element. This is a mandatory requirement of the IFC standard. When exporting your FreeCAD model to IFC, a default IfcSite will be created for all Building objects found that are not inside a Site. However, it is best if you create that site yourself, so you have more control over its name and properties. This test is here to help you to find those buildings without sites.</p></body></html> + <html><head/><body><p>All IfcBuilding elements are required to be inside an IfcSite element. This is a mandatory requirement of the IFC standard. When exporting the FreeCAD model to IFC, a default IfcSite will be created for all Building objects found that are not inside a Site. However, it is best to manually create that site to have more control over its name and properties. This test is here to help find those buildings without sites.</p></body></html> Are all buildings part of a site? @@ -165,7 +165,7 @@ - <html><head/><body><p>The IFC standard requires at least one site, one building and one level or building storey per project. This test will ensure that at least one object of each of these 3 types exists in the model.</p><p>Note that, as this is a mandatory requirement, FreeCAD will automatically add a default site, a default building and/or a default building storey if any of these is missing. So even if this test didn't pass, your exported IFC file will meet the requirements.</p><p>However, it is always better to create these objects yourself, as you get more control over naming and properties.</p></body></html> + <html><head/><body><p>The IFC standard requires at least one site, one building and one level or building storey per project. This test will ensure that at least one object of each of these 3 types exists in the model.</p><p>Note that, as this is a mandatory requirement, FreeCAD will automatically add a default site, a default building and/or a default building storey if any of these is missing. So even if this test did not pass, the exported IFC file will meet the requirements.</p><p>However, it is always better to manually create these projects to gain more control over naming and properties.</p></body></html> Is there at least one site, one building and one level in the model? @@ -201,7 +201,7 @@ - <html><head/><body><p>Although it is not a requirement for IFC objects to have fully clean and solid geometry (and you will more than often find IFC files with bad geometry out there, oh boy if you find!), it is of course better if they do. You will reduce chances of problems with other applications, and after all, in real life, all objects have solid shapes.</p><p>FreeCAD has a lot of tools to check for geometry quality, and most parametric objects, including BIM objects, will usually warn you if their geometry becomes unclean or not solid at some point. This test makes sure everything is OK.</p></body></html> + <html><head/><body><p>Although it is not a requirement for IFC objects to have fully clean and solid geometry, it is better if they do. This will reduce chances of problems with other applications. In real life, all objects have solid shapes.</p><p>FreeCAD has a lot of tools to check for geometry quality, and most parametric objects, including BIM objects, will usually warn the user if their geometry becomes unclean or not solid at some point. This test makes validates the solidity of the geometry.</p></body></html> Are all BIM objects solid and valid? @@ -214,7 +214,7 @@ - <html><head/><body><p>The IFC format provides a defined type for most of the objects that compose a building, for example walls, columns, doors, or sinks. But it also supports undefined objects, which are given the generic BuildingElementProxy type. This test will check that all objects have a defined type.</p><p><br/></p><p>Note that failing this test is not necessarily bad, as you might specifically want some object to not have any defined type. In some cases, this might even give better results, as some applications like Revit might add possibly unwanted additional constraints or transformations to some known types such as structural elements (beams or columns). Exporting them as BuildingElementProxies will prevent that.</p></body></html> + <html><head/><body><p>The IFC format provides a defined type for most of the objects that compose a building, for example walls, columns, doors, or sinks. But it also supports undefined objects, which are given the generic BuildingElementProxy type. This test will check that all objects have a defined type.</p><p><br/></p><p>Note that failing this test is not necessarily bad, as it may be desirable for some object to not have any defined type. In some cases, this might even give better results, as some applications like Revit might add unwanted additional constraints or transformations to some known types such as structural elements (beams or columns). Exporting them as BuildingElementProxies will prevent that.</p></body></html> Are all BIM objects of a defined IFC type? @@ -243,7 +243,7 @@ - <html><head/><body><p>Classification systems, such as UniClass or MasterFormat, or even your own custom system, are in some cases an important part of a building project. This test will ensure that all BIM objects and materials found in the model have their standard code property dutifully filled.</p></body></html> + <html><head/><body><p>Classification systems, such as UniClass or MasterFormat, or even a custom system, are in some cases an important part of a building project. This test will ensure that all BIM objects and materials found in the model have their standard code property dutifully filled.</p></body></html> Do all BIM objects and materials have a standard classification code defined? @@ -270,7 +270,7 @@ - <html><head/><body><p>The IFC standard offers standard, predefined property sets for many object types. for example, the property set Pset_WallCommon contains properties that the IFC standard thinks all walls should have. This test will check that all BIM objects have the right property set, if available.</p><p>Note that this is by no means a formal requirement, and these will inflate the size of your IFC file consequently. We suggest you add standard property sets only if you are actually using any of them.</p></body></html> + <html><head/><body><p>The IFC standard offers standard, predefined property sets for many object types. For example, the property set Pset_WallCommon contains properties that the IFC standard thinks all walls should have. This test will check that all BIM objects have the right property set, if available.</p><p>Note that this is by no means a formal requirement, and these will inflate the size of the IFC file consequently. It is recommended to add standard property sets only if they are in use.</p></body></html> Do all common IFC types have the corresponding Property Set? @@ -283,7 +283,7 @@ - <html><head/><body><p>IFC objects have a geometry representation, which defines the shape of the object, but can also have some or their dimensions, such as height, width or area, explicitly stated. This is very useful for BIM applications that don't process the geometry, such as spreadsheets. Those applications are still able to get and estimate quantities from IFC objects without the need to analyze the geometry.</p><p>It is also a possibility for errors (or even fraud), as nothing guarantees that those explicitly stated dimensions match what is inside the geometry.</p><p>This test will find any BIM object that has available dimension properties such as width or height, for example walls and structures, but such properties are not marked for explicit export to IFC.</p></body></html> + <html><head/><body><p>IFC objects have a geometry representation, which defines the shape of the object, but can also have some or their dimensions, such as height, width or area, explicitly stated. This is very useful for BIM applications that do not process the geometry, such as spreadsheets. Those applications are still able to get and estimate quantities from IFC objects without the need to analyze the geometry.</p><p>It is also a possibility for errors (or even fraud), as nothing guarantees that those explicitly stated dimensions match what is inside the geometry.</p><p>This test will find any BIM object that has available dimension properties such as width or height, for example walls and structures, but such properties are not marked for explicit export to IFC.</p></body></html> Do all geometric BIM objects have explicit dimensions set? @@ -296,7 +296,7 @@ - <html><head/><body><p>Although there is no requirement for IFC objects to have a material defined, in the real world, it is an important layer of information to be added to you model. This test will find BIM objects without a material defined.</p><p>If a BIM object is exported without a material, it will nevertheless be assigned an IfcSurfaceStyle, which will be created from the object color. Some BIM applications actually disregard materials, and only consider the surface style of an object. No IfcMaterial will be attributed to that object.</p><p>If a BIM object has a material defined, a surface style will still be created (an IfcMaterial too) but its surface style will take the same name and properties as the material, thus giving more consistency to your file, no matter what other BIM consider, surface style, material, or both.</p></body></html> + <html><head/><body><p>Although there is no requirement for IFC objects to have a material defined, in the real world, it is an important layer of information to be added to the model. This test will find BIM objects without a material defined.</p><p>If a BIM object is exported without a material, it will nevertheless be assigned an IfcSurfaceStyle, which will be created from the object color. Some BIM applications disregard materials, and only consider the surface style of an object. No IfcMaterial will be attributed to that object.</p><p>If a BIM object has a material defined, a surface style will still be created (an IfcMaterial too), but its surface style will take the same name and properties as the material, thus giving more consistency to the file.</p></body></html> Do all BIM objects have a material? @@ -372,7 +372,7 @@ - <html><head/><body><p>Walls, columns and beams in FreeCAD can be constructed in a wide number of ways. But some simpler BIM applications might have difficulties with walls that are not of the most simple type, that is, a single, straight piece of wall (which correspond to the IfcWallStandardCase type) or beams and columns that are not based on a straight extrusion of a flat profile (BeamStandardCase, ColumnStandardCase)</p><p>This test will find any wall which is not such a standard case.</p><p><span style=" font-weight:600;">Note</span>: At the moment, BIM objects that meet the requirements to be of a standard case, are still exported as IfcWall, IfcBeam, IfcColumn.</p></body></html> + <html><head/><body><p>Walls, columns and beams in FreeCAD can be constructed in a wide number of ways, but some simpler BIM applications might have difficulties with walls that are not of the most simple type. That is, a single, straight piece of wall (which correspond to the IfcWallStandardCase type) or beams and columns that are not based on a straight extrusion of a flat profile (BeamStandardCase, ColumnStandardCase)</p><p>This test will find any wall which is not such a standard case.</p><p><span style=" font-weight:600;">Note</span>: At the moment, BIM objects that meet the requirements to be of a standard case, are still exported as IfcWall, IfcBeam, IfcColumn.</p></body></html> Are all walls, beams and columns based on a single line or profile (standard case)? @@ -412,7 +412,7 @@ - <html><head/><body><p>When exporting a model to IFC, all BIM objects that are an extrusion of a rectangular profile will use an IfcRectangleProfileDef entity as their extrusion profile. However, Revit won't import these correctly. If you are going to use the IFC file in Revit, we recommend you to disable this behavior by checking the option under menu <span style=" font-weight:600;">Edit -&gt; Preferences -&gt; BIM -&gt; Native IFC -&gt; Disable IfcRectangularProfileDef</span>.</p><p>When that option is checked, all extrusion profiles will be exported as generic IfcArbitraryProfileDef entities, regardless of if they are rectangular or not, which will contain a little less information, but will open correctly in Revit.</p></body></html> + <html><head/><body><p>When exporting a model to IFC, all BIM objects that are an extrusion of a rectangular profile will use an IfcRectangleProfileDef entity as their extrusion profile. However, Revit will not import these correctly. If using the IFC file in Revit, it is recommended to disable this behavior by checking the option under menu <span style=" font-weight:600;">Edit -&gt; Preferences -&gt; BIM -&gt; Native IFC -&gt; Disable IfcRectangularProfileDef</span>.</p><p>When that option is checked, all extrusion profiles will be exported as generic IfcArbitraryProfileDef entities, regardless of if they are rectangular or not, which will contain a little less information, but will open correctly in Revit.</p></body></html> Is IfcRectangleProfileDef export disabled? (Revit only) diff --git a/src/Mod/BIM/Resources/ui/dialogPreflightResults.ui b/src/Mod/BIM/Resources/ui/dialogPreflightResults.ui index 90d16e8829..783dfd9e92 100644 --- a/src/Mod/BIM/Resources/ui/dialogPreflightResults.ui +++ b/src/Mod/BIM/Resources/ui/dialogPreflightResults.ui @@ -11,7 +11,7 @@ - Test results + Test Results @@ -40,7 +40,7 @@ - Results of test: + Results of test true @@ -88,7 +88,7 @@ - to Report panel + To Report Panel diff --git a/src/Mod/BIM/Resources/ui/dialogProjectManager.ui b/src/Mod/BIM/Resources/ui/dialogProjectManager.ui index 4a280670be..ebcd194564 100644 --- a/src/Mod/BIM/Resources/ui/dialogProjectManager.ui +++ b/src/Mod/BIM/Resources/ui/dialogProjectManager.ui @@ -17,7 +17,7 @@ - This screen allows you to create and configure a new BIM project in FreeCAD. + This screen assists in creating and configuring a new BIM project in FreeCAD true @@ -39,7 +39,7 @@ - Use preset... + Use preset @@ -53,7 +53,7 @@ - The settings below can be saved as a preset. Presets are stored as .txt files in your FreeCAD user folder + The settings below can be saved as a preset. Presets are stored as .txt files in the local FreeCAD user folder Save preset @@ -84,10 +84,10 @@ - Create a new BIM project + Creates a new BIM project - Create a new BIM project + Create a New BIM Project true @@ -111,10 +111,10 @@ - This will create a new FreeCAD document that allows you to build a BIM model, but with no specific IFC structure yet. This is the most flexible option when you start working ona BIM project. You can convert this project to IFC anytime later. + This will create a new FreeCAD document for the construction of a BIM model, but initially with no specific IFC structure. This is the most flexible option when starting working on a BIM project. This project can be converted to IFC anytime later. - Create a new document without IFC support yet + Create a new document without IFC support false @@ -124,10 +124,10 @@ - This will create an IFC project. All the BIM objects you will add to that IFC project will immediately become IFC objects. This is less flexible, but allows you to stick more strictly to the IFC standard. + This will create an IFC project. All the BIM objects added to the IFC project will immediately become IFC objects. This is less flexible, but helps to strictly adhere to the IFC standard. - Create a Native IFC project in the current document + Create a native IFC project in the current document true @@ -137,10 +137,10 @@ - The new IFC project will be created as a new FreeCAD document. In that mode, the IFC project is the FreeCAD document, anything you create in that document becomes part of the IFC project. This is extremely restrictive as no non-IFC object can be added to the document. + The new IFC project will be created as a new FreeCAD document. In that mode, the IFC project is the FreeCAD document, anything created in that document becomes part of the IFC project. This is extremely restrictive as no non-IFC object can be added to the document. - Create a locked Native IFC project as a new document + Create a locked native IFC project as a new document @@ -176,7 +176,7 @@ Create a new site - Create site + Create Site false @@ -188,7 +188,7 @@ - The site object contains all the data relative to the project location. Later on, you can attach a physical object representing the terrain. + The site object contains all the data relative to the project location. Later on, is it possible to attach a physical object representing the terrain. true @@ -200,7 +200,7 @@ - The East longitude of this site + The east longitude of this site E @@ -250,7 +250,7 @@ - The difference between the up direction of this site and the true North direction + The difference between the up direction of this site and the true north direction ° @@ -301,7 +301,7 @@ - The North latitude of this site + The north latitude of this site N @@ -325,10 +325,10 @@ - Create a new building + Creates a new building - Create building + Create Building true @@ -337,7 +337,7 @@ - This will configure a single building for this project. If your project is made of several buildings, you can duplicate it after creation and update its properties. + This will configure a single building for this project. If the project is made of several buildings, it can be duplicated after creation and its properties updated. true @@ -370,7 +370,7 @@ - Default Building + Default building @@ -404,7 +404,7 @@ - The main use of this building + The primary function of this building 0 @@ -434,7 +434,7 @@ - Main use + Primary function @@ -451,7 +451,7 @@ - An estimate building width. Keep 0 if you don't want to specify this now + An estimate building width. Keep the value as 0 to not specify this now. 0 @@ -487,7 +487,7 @@ - An estimate building length. Keep 0 if you don't want to specify this now + An estimate building length. Keep the value as 0 to not specify this now. 0 @@ -549,7 +549,7 @@ Add a human figure to the document - Add a human figure + Add Human Figure true @@ -558,7 +558,7 @@ - A human figure will be added to the document, which helps giving a sense of scale + A human figure will be added to the document, which helps give a sense of scale true @@ -577,7 +577,7 @@ - BIM projects are typically organized into levels, that represents the different storeys of a building. Although it is not mandatory to work with levels in FreeCAD, you can set up default levels here + BIM projects are typically organized into levels that represent the different storeys of a building. Although it is not mandatory to work with levels in FreeCAD, the default levels can be set here. true @@ -631,7 +631,7 @@ - Default groups to be added to each level. Default groups such as walls, windows,... are useful to organize the different building elements inside a level + Default groups to be added to each level. Default groups such as walls and windows are useful to organize the different building elements inside a level. true @@ -641,7 +641,7 @@ - A list of grouls to add under each level + A list of groups to add under each level true @@ -659,7 +659,7 @@ - Add a new group + Add New Group Add @@ -676,7 +676,7 @@ Delete a selected group - Del + Delete diff --git a/src/Mod/BIM/Resources/ui/dialogQuantitySurveying.ui b/src/Mod/BIM/Resources/ui/dialogQuantitySurveying.ui index 6564537712..92494caac2 100644 --- a/src/Mod/BIM/Resources/ui/dialogQuantitySurveying.ui +++ b/src/Mod/BIM/Resources/ui/dialogQuantitySurveying.ui @@ -59,7 +59,7 @@ - This screen lists all the components of the current document. You can select them to create a FreeCAD spreadsheet containing information from them. + This display lists all the components of the current document. Select them to create a FreeCAD spreadsheet containing information from them. true @@ -75,7 +75,7 @@ - This dialogue window will help you to generate list of components, dimensions, materials from a opened BIM file for Quantity Surveyor purposes. + This dialog window will help generate a list of components, dimensions, and materials from an opened BIM file for quantity surveyor purposes. true @@ -91,7 +91,7 @@ - Select from these options the values you want from each component. FreeCAD will generate a line in the spreadsheet with these values (if they are present). + Select from these options the values desired from each component. FreeCAD will generate a line in the spreadsheet with these values (if they are present). true @@ -172,7 +172,7 @@ - Select these components from the list if you want to hide the rest of them and move to Survey mode. + Select these components from the list to hide the rest of them and move to survey mode. true @@ -214,7 +214,7 @@ - Select these components from the list if you want to hide the rest of them and move to schedule definition mode. + Select these components from the list to hide the rest of them and move to schedule definition mode. true diff --git a/src/Mod/BIM/Resources/ui/dialogReorder.ui b/src/Mod/BIM/Resources/ui/dialogReorder.ui index 36a8d1bfe3..53c36d4df8 100644 --- a/src/Mod/BIM/Resources/ui/dialogReorder.ui +++ b/src/Mod/BIM/Resources/ui/dialogReorder.ui @@ -17,7 +17,7 @@ - Drag items to reorder then press OK to accept + Drag items to reorder them true @@ -34,7 +34,7 @@ - Order alphabetically + Order Alphabetically diff --git a/src/Mod/BIM/Resources/ui/dialogSetup.ui b/src/Mod/BIM/Resources/ui/dialogSetup.ui index 705f9cbc52..0a37f5dac0 100644 --- a/src/Mod/BIM/Resources/ui/dialogSetup.ui +++ b/src/Mod/BIM/Resources/ui/dialogSetup.ui @@ -20,7 +20,7 @@ - This dialog will help you to set FreeCAD up for efficient BIM workflow by setting a couple of typical FreeCAD options. This dialog can be accessed again anytime from menu Manage -> Setup, and more options are available under menu Edit -> Preferences. + This dialog will help set FreeCAD up for efficient BIM workflow by setting a couple FreeCAD options. This dialog can be accessed again anytime from menu Manage -> Setup, and more options are available under the edit -> preferences menu. true @@ -30,7 +30,7 @@ - Hover your mouse on each setting for additional info. + Hover the mouse on each setting for additional info @@ -78,11 +78,11 @@ - Choose one of the presets in this list to fill all the settings below with predetermined values. Then, adjust to your likings + Choose one of the presets in this list to fill all the settings below with predetermined values - Choose your preferred working unit... + Choose the preferred working unit @@ -97,7 +97,7 @@ - US / Imperial + US/Imperial @@ -112,36 +112,36 @@ - <html><head/><body><p>The unit you prefer to work with, that will be used everywhere: in dialogs, measurements and dimensions. However, you can enter any other unit anytime. For example, if you configured FreeCAD to work in millimeters, you can still enter measures as &quot;10m&quot; or &quot;5ft&quot;. You can also change the default unit system anytime without causing any modification to your model. Location in preferences: <span style=" font-weight:600;">General &gt; Default unit system</span></p></body></html> + <html><head/><body><p>The preferred unit that will be used everywhere: in dialogs, measurements and dimensions. However, any other unit can be entered anytime. Changing the default unit system anytime will not cause any modification to the model. Location in preferences: <span style=" font-weight:600;">General &gt; Default unit system</span></p></body></html> - millimeters + Millimeters - centimeters + Centimeters - meters + Meters - inches + Inches - feet + Feet - architectural + Architectural @@ -163,7 +163,7 @@ - <html><head/><body><p>The number of decimals you wish to see used in the interface controls and measurements. Location in preferences: <span style=" font-weight:600;">General &gt; Units &gt; Number of decimals</span></p></body></html> + <html><head/><body><p>The number of decimals preferred in the interface controls and measurements. Location in preferences: <span style=" font-weight:600;">General &gt; Units &gt; Number of decimals</span></p></body></html> 2 @@ -360,21 +360,21 @@ - Construction: + Construction - Helpers: + Helpers - Faces: + Faces @@ -388,7 +388,7 @@ - Lines: + Lines @@ -416,7 +416,7 @@ - Gradient bottom: + Gradient bottom @@ -430,21 +430,21 @@ - Plain background: + Plain background - Text: + Text - The background color when switched to simple color + The background color when simple color is enabled @@ -460,7 +460,7 @@ - This is the altitude of the camera when you create a blank file. Good values are between 5 (view a few centimeters wide) and 5000 (view a few meters wide) + The altitude of the camera when a blank file is created. Recommended values are between 5 (view a few centimeters wide) and 5000 (view a few meters wide) 99999 @@ -473,7 +473,7 @@ - <html><head/><body><p>Your name (optional). You can also add your email like this: John Doe &lt;john@doe.com&gt;. Location in preferences: <span style=" font-weight:600;">General &gt; Document &gt; Author name</span></p></body></html> + <html><head/><body><p>Name (optional). You can also add an email address like this: John Doe &lt;john@doe.com&gt;. Location in preferences: <span style=" font-weight:600;">General &gt; Document &gt; Author name</span></p></body></html> @@ -503,7 +503,7 @@ - <html><head/><body><p>Optional license you wish to use for new files. Keep &quot;All rights reserved&quot; if you don't wish to use any particular license. Location in preferences: <span style=" font-weight:600;">General &gt; Document &gt; Default license</span></p></body></html> + <html><head/><body><p>Optional license to use for new files. Keep &quot;All rights reserved&quot; if no license is preferred. Location in preferences: <span style=" font-weight:600;">General &gt; Document &gt; Default license</span></p></body></html> @@ -600,7 +600,7 @@ - <html><head/><body><p><span style=" font-weight:600;">Tip</span>: You might also want to set the appropriate snapping modes on the Snapping toolbar. Enabling only the snap positions that you need will make drawing in FreeCAD considerably faster.</p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Tip</span>: The appropriate snapping modes on the Snapping toolbar can be set. Enabling only the snap positions needed will make drawing in FreeCAD considerably faster.</p></body></html> true @@ -610,7 +610,7 @@ - <html><head/><body><p><b>Tip</b>: You are currently using FreeCAD version %1. Consider using the <a href="https://github.com/FreeCAD/FreeCAD/releases"><span style=" text-decoration: underline; color:#0000ff;">latest development version %2</span></a>, which brings all the latest improvements to FreeCAD.</p></body></html> + <html><head/><body><p><b>Tip</b>: The currently installed FreeCAD version is %1. Consider using the <a href="https://github.com/FreeCAD/FreeCAD/releases"><span style=" text-decoration: underline; color:#0000ff;">latest development version %2</span></a>, which brings all the latest improvements to FreeCAD.</p></body></html> true diff --git a/src/Mod/BIM/Resources/ui/dialogSpaces.ui b/src/Mod/BIM/Resources/ui/dialogSpaces.ui index 640ca185b9..0a6902c4e3 100644 --- a/src/Mod/BIM/Resources/ui/dialogSpaces.ui +++ b/src/Mod/BIM/Resources/ui/dialogSpaces.ui @@ -11,13 +11,13 @@ - Spaces manager + Spaces Manager - This screen will allow you to check the spaces configuration of your project and change some attributes. + This screen enables checking the spaces configuration and editing of attributes in the project. true @@ -112,7 +112,7 @@ - Space information + Space Information diff --git a/src/Mod/BIM/Resources/ui/dialogTree.ui b/src/Mod/BIM/Resources/ui/dialogTree.ui index 12102188a2..5d974b8b89 100644 --- a/src/Mod/BIM/Resources/ui/dialogTree.ui +++ b/src/Mod/BIM/Resources/ui/dialogTree.ui @@ -11,7 +11,7 @@ - IFC representation of + IFC Representation diff --git a/src/Mod/BIM/Resources/ui/dialogTutorial.ui b/src/Mod/BIM/Resources/ui/dialogTutorial.ui index f38817a481..affb98fbdf 100644 --- a/src/Mod/BIM/Resources/ui/dialogTutorial.ui +++ b/src/Mod/BIM/Resources/ui/dialogTutorial.ui @@ -11,7 +11,7 @@ - BIM tutorial + BIM Tutorial @@ -21,11 +21,10 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Fira Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Loading tutorials contents from the FreeCAD wiki. Please wait...</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Loading tutorial contents from the FreeCAD wiki. Please wait…</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If this is the first time you are using the tutorial, this can take a while, since we need to download many images. On next runs, this will be faster as the images are cached locally.</p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">When the tutorial is fully written, we'll think of a faster system to avoid this annoying loading time. Please bear with us in the meantime! ;)</p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If this is the first time viewing the tutorial, this can take a while. Subsequent runs will complete more quickly.</p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> @@ -38,7 +37,7 @@ p, li { white-space: pre-wrap; } - Tasks to complete: + Tasks to complete diff --git a/src/Mod/BIM/Resources/ui/dialogWelcome.ui b/src/Mod/BIM/Resources/ui/dialogWelcome.ui index 5229afc4eb..75cf4b7874 100644 --- a/src/Mod/BIM/Resources/ui/dialogWelcome.ui +++ b/src/Mod/BIM/Resources/ui/dialogWelcome.ui @@ -75,7 +75,7 @@ - <html><head/><body><p>This appears to be the first time that you are using the BIM workbench. If you press OK, the next screen will propose you to set a couple of typical FreeCAD options that are suitable for BIM work. You can change these options anytime later under menu <span style=" font-weight:600;">Manage -&gt; BIM Setup...</span></p></body></html> + <html><head/><body><p>This appears to be the first time BIM workbench is used. electing OK will open a setup screen with a few recommended FreeCAD options tailored for BIM workflows. These settings can be modified later under <span style=" font-weight:600;">Manage -&gt; BIM Setup…</span></p></body></html> true @@ -97,7 +97,7 @@ - FreeCAD is a complex application. If this is your first contact with FreeCAD, or you have never worked with 3D or BIM before, you might want to take our <a href="https://wiki.freecad.org/BIM_ingame_tutorial">BIM tutorial</a> first (Also available under menu <span style=" font-weight:600;">Help -&gt; BIM Tutorial</span>). + FreeCAD is a complex application. For those new to FreeCAD, or without prior experience in 3D modelling or BIM, it is recommended to begin with the <a href="https://wiki.freecad.org/BIM_ingame_tutorial">BIM tutorial</a>. This can also be accessed under menu <span style=" font-weight:600;">Help -&gt; BIM Tutorial</span>). true @@ -107,7 +107,7 @@ - The BIM workbench also has a <a href="https://wiki.freecad.org/BIM_Workbench">complete documentation</a> available under the Help menu. The "what's this?" button will also open the help page of any tool from the toolbars. + The BIM workbench also has a <a href="https://wiki.freecad.org/BIM_Workbench">complete documentation</a> available under the Help menu. The "What's This?" button will open the help page of any tool from the toolbars. true @@ -117,7 +117,7 @@ - A good way to start building a BIM model is by setting up basic characteristics of your project, under menu <span style=" font-weight:600;">Manage -&gt; Project setup</span>. You can also directly configure different floor plans for your project, under menu <span style=" font-weight:600;">Manage -&gt; Levels.</span> + A good way to start building a BIM model is by setting up basic characteristics of the project, under menu <span style=" font-weight:600;">Manage -&gt; Project setup</span>. Different floor plans for the project can be configured via <span style=" font-weight:600;">Manage -&gt; Levels.</span> true @@ -127,7 +127,7 @@ - There is no mandatory behaviour here though, and you can also start creating walls and columns directly, and care about organizing things in levels later. + There is no required workflow; walls and columns can be created directly, with levels organised later if preferred. true @@ -137,7 +137,7 @@ - <html><head/><body><p>You might also want to start from an existing floor plan or 3D model made in another application. Under menu <span style=" font-weight:600;">File -&gt; Import</span>, you will find a wide range of file formats that can be imported into FreeCAD.</p></body></html> + <html><head/><body><p>An existing floor plan or 3D model created in another application can also be used as a starting point. Under menu <span style=" font-weight:600;">File -&gt; Import</span>, a wide range of file formats that can be imported into FreeCAD.</p></body></html> true diff --git a/src/Mod/BIM/Resources/ui/dialogWindows.ui b/src/Mod/BIM/Resources/ui/dialogWindows.ui index 23b28a0063..1ba9dd48c9 100644 --- a/src/Mod/BIM/Resources/ui/dialogWindows.ui +++ b/src/Mod/BIM/Resources/ui/dialogWindows.ui @@ -11,13 +11,13 @@ - Doors and windows + Doors and Windows - This screen lists all the windows of the current document. You can modify them individually or together + This screen lists all the windows of the current document. They can modified individually or together true @@ -29,7 +29,7 @@ - Group by: + Group by @@ -94,14 +94,14 @@ - Total number of doors: + Total number of doors - Total number of windows: + Total number of windows diff --git a/src/Mod/BIM/Resources/ui/preferences-arch.ui b/src/Mod/BIM/Resources/ui/preferences-arch.ui index 0e4a209308..2264607a11 100644 --- a/src/Mod/BIM/Resources/ui/preferences-arch.ui +++ b/src/Mod/BIM/Resources/ui/preferences-arch.ui @@ -11,13 +11,13 @@ - General settings + General Settings - Object creation + Object Creation @@ -39,7 +39,7 @@ - If this is checked, when 2 similar walls are being connected, their underlying sketches will be joined into one, and the two walls will become one + When two similar walls are connected, their underlying sketches are merged and the walls are combined into a single object Join base sketches of walls if possible @@ -90,7 +90,7 @@ - If this is checked, when an object becomes Subtraction or Addition of an Arch object, it will receive the Draft Construction color. + If this is checked, when an object becomes subtraction or addition of an Arch object, it will receive the Draft construction color. Apply Draft construction style to subcomponents @@ -106,7 +106,7 @@ - By default, new objects will have their "Move with host" property set to False, which means they won't move when their host object is moved. + By default, new objects will have their "Move with host" property set to False, which means they will not move when their host object is moved Set "Move with host" property to True by default @@ -368,7 +368,7 @@ - 2D rendering + 2D Rendering @@ -484,7 +484,7 @@ to projections of hidden objects. Scaling factor for patterns used by objects that have -a Footprint display mode +a footprint display mode 4 @@ -512,7 +512,7 @@ a Footprint display mode - BIM server + BIM Server diff --git a/src/Mod/BIM/Resources/ui/preferences-dae.ui b/src/Mod/BIM/Resources/ui/preferences-dae.ui index cd31ece43f..bc8b18cbaa 100644 --- a/src/Mod/BIM/Resources/ui/preferences-dae.ui +++ b/src/Mod/BIM/Resources/ui/preferences-dae.ui @@ -23,7 +23,7 @@ - Export options + Export Options @@ -120,7 +120,7 @@ If using Netgen, make sure that it is available. - Tessellation value to use with the Builtin and the Mefisto meshing program. + Tessellation value to use with the Builtin and the Mefisto meshing program 4 diff --git a/src/Mod/BIM/Resources/ui/preferences-ifc-export.ui b/src/Mod/BIM/Resources/ui/preferences-ifc-export.ui index 3565343523..01eb18e9db 100644 --- a/src/Mod/BIM/Resources/ui/preferences-ifc-export.ui +++ b/src/Mod/BIM/Resources/ui/preferences-ifc-export.ui @@ -11,7 +11,7 @@ - IFC export + IFC Export @@ -32,7 +32,7 @@ - General options + General Options @@ -54,7 +54,7 @@ - Export options + Export Options @@ -62,10 +62,10 @@ - The type of objects that you wish to export: -- Standard model: solid objects. -- Structural analysis: wireframe model for structural calculations. -- Standard + structural: both types of models. + The type of objects to export: +- Standard model: solid objects +- Structural analysis: wireframe model for structural calculations +- Standard + structural: both types of models Export type @@ -75,10 +75,10 @@ - The type of objects that you wish to export: -- Standard model: solid objects. -- Structural analysis: wireframe model for structural calculations. -- Standard + structural: both types of models. + The type of objects to export: +- Standard model: solid objects +- Structural analysis: wireframe model for structural calculations +- Standard + structural: both types of models ifcExportModel @@ -108,11 +108,11 @@ - Some IFC viewers don't like objects exported as extrusions. + Some IFC viewers do not like objects exported as extrusions. Use this to force all objects to be exported as BREP geometry. - Force export as Brep + Force export as BREP ifcExportAsBrep @@ -236,7 +236,7 @@ allowing to recreate a full parametric model on reimport. When possible, similar entities will be used only once in the file if possible. -This can reduce the file size a lot, but will make it less easily readable. +This can reduce the file size considerably, but will make it less easily readable. Reuse similar entities @@ -258,7 +258,7 @@ This can reduce the file size a lot, but will make it less easily readable.When possible, IFC objects that are extruded rectangles will be exported as IfcRectangleProfileDef. However, some other applications might have problems importing that entity. -If this is your case, you can disable this and then all profiles will be exported as IfcArbitraryClosedProfileDef. +If this is the case, it can disabled and then all profiles will be exported as IfcArbitraryClosedProfileDef. Disable IfcRectangleProfileDef @@ -327,7 +327,7 @@ A building storey is not mandatory but a common practice to have at least one in - The units you want your IFC file to be exported to. + Desired units in the exported IFC file. Note that IFC files are ALWAYS written in metric units; imperial units are only a conversion factor applied on top of them. @@ -342,7 +342,7 @@ unit to work with when opening the file. - The units you want your IFC file to be exported to. + Desired units in the exported IFC file. Note that IFC files are ALWAYS written in metric units; imperial units are only a conversion factor applied on top of them. @@ -389,8 +389,7 @@ unit to work with when opening the file. If no building is found in the FreeCAD document, a default one will be added. -Warning: The IFC standard asks for at least one building in each file. By turning this option off, you will produce a non-standard IFC file. -However, at FreeCAD, we believe having a building should not be mandatory, and this option is there to have a chance to demonstrate our point of view. +Warning: The IFC standard asks for at least one building in each file. By turning this option off, a non-standard IFC file will be produced. Add default building if one is not found in the document @@ -412,7 +411,7 @@ However, at FreeCAD, we believe having a building should not be mandatory, and t If not checked, standard FreeCAD groups (App::DocumentObjectGroup) will not be exported as IfcGroup or IfcElementAssembly.\nTheir children will be re-parented to the container of the skipped group in the IFC structure. - Export FreeCAD groups + Export FreeCAD Groups true @@ -430,7 +429,7 @@ However, at FreeCAD, we believe having a building should not be mandatory, and t - In FreeCAD, it is possible to nest groups inside buildings or storeys. If this option is disabled, FreeCAD groups will be saved as IfcGroups and aggregated to the building structure. Aggregating non-building elements such as IfcGroups is however not recommended by the IFC standards. It is therefore also possible to export these groups as IfcElementAssemblies, which produces an IFC-compliant file. However, at FreeCAD, we believe nesting groups inside structures should be possible, and this option is there to have a chance to demonstrate our point of view. + In FreeCAD, it is possible to nest groups inside buildings or storeys. If this option is disabled, FreeCAD groups will be saved as IfcGroups and aggregated to the building structure. Aggregating non-building elements such as IfcGroups is however not recommended by the IFC standards. It is therefore also possible to export these groups as IfcElementAssemblies, which produces an IFC-compliant file. Export nested groups as assemblies diff --git a/src/Mod/BIM/Resources/ui/preferences-ifc.ui b/src/Mod/BIM/Resources/ui/preferences-ifc.ui index 6bbbdbee18..ab883ae7bd 100644 --- a/src/Mod/BIM/Resources/ui/preferences-ifc.ui +++ b/src/Mod/BIM/Resources/ui/preferences-ifc.ui @@ -11,7 +11,7 @@ - IFC import + IFC Import @@ -23,7 +23,7 @@ - General options + General Options @@ -90,11 +90,11 @@ One object is the base object, the others are clones. EXPERIMENTAL The number of cores to use in multicore mode. Keep 0 to disable multicore mode. -The maximum value should be your number of cores minus 1, -for example, 3 if you have a 4-core CPU. +The maximum value should be the number of cores in the CPU minus 1, +for example, 3 cores for a 4-core CPU. Set it to 1 to use multicore mode in single-core mode; this is safer -if you start getting crashes when you set multiple cores. +if crashes occur when multiple cores are set. ifcMulticore @@ -110,11 +110,11 @@ if you start getting crashes when you set multiple cores. EXPERIMENTAL The number of cores to use in multicore mode. Keep 0 to disable multicore mode. -The maximum value should be your number of cores minus 1, -for example, 3 if you have a 4-core CPU. +The maximum value should be the number of cores in the CPU minus 1, +for example, 3 cores for a 4-core CPU. Set it to 1 to use multicore mode in single-core mode; this is safer -if you start getting crashes when you set multiple cores. +if crashes occur when multiple cores are set. Number of cores to use (experimental) @@ -145,7 +145,7 @@ if you start getting crashes when you set multiple cores. - Import options + Import Options @@ -389,7 +389,7 @@ they will be treated as one. - Exclude list: + Exclude list diff --git a/src/Mod/BIM/Resources/ui/preferences-sh3d-import.ui b/src/Mod/BIM/Resources/ui/preferences-sh3d-import.ui index b29ae434cc..88eb2adf8a 100644 --- a/src/Mod/BIM/Resources/ui/preferences-sh3d-import.ui +++ b/src/Mod/BIM/Resources/ui/preferences-sh3d-import.ui @@ -11,7 +11,7 @@ - SH3D import + SH3D Import @@ -23,7 +23,7 @@ - General options + General Options @@ -45,10 +45,10 @@ - DEBUG: keep the construction geometries in the ActiveDocument. Useful when debugging a failed import + DEBUG: keep the construction geometries in the active document. Useful when debugging a failed import - Debug Geometry + Debug geometry sh3dDebugGeometry @@ -64,13 +64,13 @@ - Import options + Import Options - Merge imported element with existing FC object + Merge imported element with existing FreeCAD object Merge into existing document @@ -190,10 +190,10 @@ - Create a default Render project with the newly created Site + Create a default Render project with the newly created site (requires the Render workbench to be installed) - Create Render Project (requires Render) + Create render project sh3dCreateRenderProject @@ -209,7 +209,7 @@ - Default Floor Color + Default floor color sh3dDefaultFloorColor @@ -225,7 +225,7 @@ - This color might be used when a room does not define its own color. + This color might be used when a room does not define its own color @@ -249,7 +249,7 @@ - Default Ceiling Color + Default ceiling color sh3dDefaultCeilingColor @@ -265,7 +265,7 @@ - This color might be used when a room does not define its own color. + This color might be used when a room does not define its own color @@ -287,10 +287,10 @@ - Create a default IFC project with the newly created Site. + Create a default IFC project with the newly created site - Create IFC Project + Create IFC project sh3dCreateIFCProject @@ -303,10 +303,10 @@ - Create a Mesh to represent the default ground level. + Create a mesh to represent the default ground level - Create ground level Mesh + Create ground level mesh sh3dCreateGroundMesh @@ -324,7 +324,7 @@ - Default ground Color + Default ground color sh3dDefaultGroundColor @@ -340,7 +340,7 @@ - This color might be used when the environment does not define a color for the ground. + This color might be used when the environment does not define a color for the ground @@ -364,7 +364,7 @@ - Default sky Color + Default sky color sh3dDefaultSkyColor @@ -380,7 +380,7 @@ - This color might be used when the environment does not define a color for the sky. + This color might be used when the environment does not define a color for the sky @@ -402,7 +402,7 @@ - Create Facebinders, Baseboards for walls, floors and ceilings for Rooms + Create face binders and baseboards for walls, and floors and ceilings for rooms Decorate surfaces @@ -423,7 +423,7 @@ - Default furniture Color + Default furniture color sh3dDefaultFurnitureColor @@ -439,7 +439,7 @@ - This color is used when a furniture does not define its own color. + This color is used when a furniture does not define its own color @@ -461,7 +461,7 @@ - Fit view while importing. + Fit view while importing Fit view while importing diff --git a/src/Mod/BIM/Resources/ui/preferencesNativeIFC.ui b/src/Mod/BIM/Resources/ui/preferencesNativeIFC.ui index 43e9771878..e5ec2f0652 100644 --- a/src/Mod/BIM/Resources/ui/preferencesNativeIFC.ui +++ b/src/Mod/BIM/Resources/ui/preferencesNativeIFC.ui @@ -67,7 +67,7 @@ - The type of object created at import. Coin only is much faster, but you don't get the full shape information. You can convert between the two anytime by right-clicking the object tree + The type of object created at import. Coin only is much faster, but does not provide the full shape information. Convert between the two anytime by right-clicking the object tree 1 @@ -90,7 +90,7 @@ - No 3D representation at all + No 3D representation @@ -180,7 +180,7 @@ - When enabling this, the original version of objects dropped onto an IFC project tree will not be deleted. + When enabling this, the original version of objects dropped onto an IFC project tree will not be deleted Keep original version of aggregated objects @@ -243,7 +243,7 @@ - New document + New Document @@ -281,7 +281,7 @@ - New project + New Project @@ -303,7 +303,7 @@ - Check this to ask the above question every time a project is created + Enables asking the above question every time a project is created Ask every time @@ -325,7 +325,7 @@ - New type + New Type diff --git a/src/Mod/BIM/TestArchGui.py b/src/Mod/BIM/TestArchGui.py index c631c6bceb..d08f0b7fe9 100644 --- a/src/Mod/BIM/TestArchGui.py +++ b/src/Mod/BIM/TestArchGui.py @@ -56,7 +56,7 @@ class ArchTest(unittest.TestCase): App.setActiveDocument("ArchTest") def testRebar(self): - App.Console.PrintLog ('Checking Arch Rebar...\n') + App.Console.PrintLog ('Checking Arch Rebar…\n') s = Arch.makeStructure(length=2,width=3,height=5) sk = App.ActiveDocument.addObject('Sketcher::SketchObject','Sketch') sk.AttachmentSupport = (s,["Face6"]) diff --git a/src/Mod/BIM/bimcommands/BimArchUtils.py b/src/Mod/BIM/bimcommands/BimArchUtils.py index da440f3ec5..1c96fd543f 100644 --- a/src/Mod/BIM/bimcommands/BimArchUtils.py +++ b/src/Mod/BIM/bimcommands/BimArchUtils.py @@ -38,7 +38,7 @@ class Arch_Add: def GetResources(self): return {'Pixmap' : 'Arch_Add', - 'MenuText': QT_TRANSLATE_NOOP("Arch_Add","Add component"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_Add","Add Component"), 'ToolTip': QT_TRANSLATE_NOOP("Arch_Add","Adds the selected components to the active object")} def IsActive(self): @@ -78,8 +78,8 @@ class Arch_Remove: def GetResources(self): return {'Pixmap' : 'Arch_Remove', - 'MenuText': QT_TRANSLATE_NOOP("Arch_Remove","Remove component"), - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Remove","Remove the selected components from their parents, or create a hole in a component")} + 'MenuText': QT_TRANSLATE_NOOP("Arch_Remove","Remove Component"), + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Remove","Removes the selected components from their parents, or creates a hole in a component")} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -149,7 +149,7 @@ class Arch_MeshToShape: def GetResources(self): return {'Pixmap' : 'Arch_MeshToShape', 'MenuText': QT_TRANSLATE_NOOP("Arch_MeshToShape","Mesh to Shape"), - 'ToolTip': QT_TRANSLATE_NOOP("Arch_MeshToShape","Turns selected meshes into Part Shape objects")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_MeshToShape","Turns selected meshes into Part shape objects")} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -174,7 +174,7 @@ class Arch_MeshToShape: tol = params.get_param_arch("ConversionTolerance") flat = params.get_param_arch("ConversionFlat") cut = params.get_param_arch("ConversionCut") - FreeCAD.ActiveDocument.openTransaction(translate("Arch","Mesh to Shape")) + FreeCAD.ActiveDocument.openTransaction(translate("Arch","Mesh to shape")) for obj in FreeCADGui.Selection.getSelection(): newobj = Arch.meshToShape(obj,True,fast,tol,flat,cut) if g and newobj: @@ -186,7 +186,7 @@ class Arch_SelectNonSolidMeshes: def GetResources(self): return {'Pixmap': 'Arch_SelectNonManifold.svg', - 'MenuText': QT_TRANSLATE_NOOP("Arch_SelectNonSolidMeshes","Select non-manifold meshes"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_SelectNonSolidMeshes","Select Non-Manifold Meshes"), 'ToolTip': QT_TRANSLATE_NOOP("Arch_SelectNonSolidMeshes","Selects all non-manifold meshes from the document or from the selected groups")} def IsActive(self): @@ -216,7 +216,7 @@ class Arch_RemoveShape: "the Arch RemoveShape command definition" def GetResources(self): return {'Pixmap' : 'Arch_RemoveShape', - 'MenuText': QT_TRANSLATE_NOOP("Arch_RemoveShape","Remove Shape from BIM"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_RemoveShape","Remove Shape From BIM"), 'ToolTip': QT_TRANSLATE_NOOP("Arch_RemoveShape","Removes cubic shapes from BIM components")} def IsActive(self): @@ -234,7 +234,7 @@ class Arch_CloseHoles: def GetResources(self): return {'Pixmap' : 'Arch_CloseHoles', - 'MenuText': QT_TRANSLATE_NOOP("Arch_CloseHoles","Close holes"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_CloseHoles","Close Holes"), 'ToolTip': QT_TRANSLATE_NOOP("Arch_CloseHoles","Closes holes in open shapes, turning them solids")} def IsActive(self): @@ -264,7 +264,7 @@ class Arch_Check: import Arch result = Arch.check(FreeCADGui.Selection.getSelection()) if not result: - FreeCAD.Console.PrintMessage(str(translate("Arch","All good! No problems found"))) + FreeCAD.Console.PrintMessage(str(translate("Arch","No problems found!"))) else: FreeCADGui.Selection.clearSelection() for i in result: @@ -294,8 +294,8 @@ class Arch_ToggleIfcBrepFlag: def GetResources(self): return {'Pixmap' : 'Arch_ToggleIfcBrepFlag', - 'MenuText': QT_TRANSLATE_NOOP("Arch_ToggleIfcBrepFlag","Toggle IFC B-rep flag"), - 'ToolTip': QT_TRANSLATE_NOOP("Arch_ToggleIfcBrepFlag","Force an object to be exported as B-rep or not")} + 'MenuText': QT_TRANSLATE_NOOP("Arch_ToggleIfcBrepFlag","Toggle IFC B-rep Flag"), + 'ToolTip': QT_TRANSLATE_NOOP("Arch_ToggleIfcBrepFlag","Forces an object to be exported as B-rep or not")} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -339,7 +339,7 @@ class Arch_CloneComponent: def GetResources(self): return {'Pixmap' : 'Arch_Component_Clone', - 'MenuText': QT_TRANSLATE_NOOP("Arch_CloneComponent","Clone component"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_CloneComponent","Clone Component"), 'Accel': "C, C", 'ToolTip': QT_TRANSLATE_NOOP("Arch_CloneComponent","Clones an object as an undefined architectural component")} @@ -366,9 +366,9 @@ class Arch_IfcSpreadsheet: def GetResources(self): return {'Pixmap': 'Arch_Schedule', - 'MenuText': QT_TRANSLATE_NOOP("Arch_IfcSpreadsheet","Create IFC spreadsheet..."), + 'MenuText': QT_TRANSLATE_NOOP("Arch_IfcSpreadsheet","New IFC Spreadsheet"), 'Accel': "I, P", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_IfcSpreadsheet","Creates a spreadsheet to store IFC properties of an object.")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_IfcSpreadsheet","Creates a spreadsheet to store IFC properties of an object")} def IsActive(self): v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph") @@ -394,7 +394,7 @@ class Arch_ToggleSubs: def GetResources(self): return {'Pixmap' : 'Arch_ToggleSubs', 'Accel' : 'Ctrl+Space', - 'MenuText': QT_TRANSLATE_NOOP("Arch_ToggleSubs","Toggle subcomponents"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_ToggleSubs","Toggle Subcomponents"), 'ToolTip' : QT_TRANSLATE_NOOP("Arch_ToggleSubs","Shows or hides the subcomponents of this object")} def IsActive(self): @@ -474,11 +474,11 @@ class Arch_MergeWalls: FreeCAD.Console.PrintWarning(translate("Arch","The selected wall contains no subwall to merge")) return else: - FreeCAD.Console.PrintWarning(translate("Arch","Please select only wall objects")) + FreeCAD.Console.PrintWarning(translate("Arch","Select only wall objects")) return for w in walls: if Draft.getType(w) != "Wall": - FreeCAD.Console.PrintMessage(translate("Arch","Please select only wall objects")) + FreeCAD.Console.PrintMessage(translate("Arch","Select only wall objects")) return FreeCAD.ActiveDocument.openTransaction(translate("Arch","Merge Walls")) FreeCADGui.addModule("Arch") diff --git a/src/Mod/BIM/bimcommands/BimAxis.py b/src/Mod/BIM/bimcommands/BimAxis.py index b9c37af90f..878cd422f3 100644 --- a/src/Mod/BIM/bimcommands/BimAxis.py +++ b/src/Mod/BIM/bimcommands/BimAxis.py @@ -87,7 +87,7 @@ class Arch_AxisSystem: FreeCADGui.doCommand("Arch.makeAxisSystem("+s+")") FreeCAD.ActiveDocument.commitTransaction() else: - FreeCAD.Console.PrintError(translate("Arch","Please select at least one axis")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Select at least one axis")+"\n") def IsActive(self): @@ -128,7 +128,7 @@ class Arch_AxisTools: return tuple(['Arch_Axis','Arch_AxisSystem','Arch_Grid']) def GetResources(self): - return { 'MenuText': QT_TRANSLATE_NOOP("Arch_AxisTools",'Axis tools'), + return { 'MenuText': QT_TRANSLATE_NOOP("Arch_AxisTools",'Axis Tools'), 'ToolTip': QT_TRANSLATE_NOOP("Arch_AxisTools",'Axis tools') } diff --git a/src/Mod/BIM/bimcommands/BimBackground.py b/src/Mod/BIM/bimcommands/BimBackground.py index 02a6b072bb..406cacc978 100644 --- a/src/Mod/BIM/bimcommands/BimBackground.py +++ b/src/Mod/BIM/bimcommands/BimBackground.py @@ -35,7 +35,7 @@ class BIM_Background: def GetResources(self): return { "Pixmap": "BIM_Background", - "MenuText": QT_TRANSLATE_NOOP("BIM_Background", "Toggle background"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Background", "Toggle Background"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Background", "Toggles the background of the 3D view between simple and gradient", diff --git a/src/Mod/BIM/bimcommands/BimBuilder.py b/src/Mod/BIM/bimcommands/BimBuilder.py index c45b445a82..6f9b2b7d25 100644 --- a/src/Mod/BIM/bimcommands/BimBuilder.py +++ b/src/Mod/BIM/bimcommands/BimBuilder.py @@ -35,7 +35,7 @@ class BIM_Builder: def GetResources(self): return { "Pixmap": "Part_Shapebuilder", - "MenuText": QT_TRANSLATE_NOOP("Part_Builder", "Shape builder..."), + "MenuText": QT_TRANSLATE_NOOP("Part_Builder", "Shape Builder"), "ToolTip": QT_TRANSLATE_NOOP( "Part_Builder", "Advanced utility to create shapes" ), diff --git a/src/Mod/BIM/bimcommands/BimBuildingPart.py b/src/Mod/BIM/bimcommands/BimBuildingPart.py index 9766fa4161..a096179232 100644 --- a/src/Mod/BIM/bimcommands/BimBuildingPart.py +++ b/src/Mod/BIM/bimcommands/BimBuildingPart.py @@ -45,7 +45,7 @@ class Arch_Level: return {'Pixmap' : 'Arch_Floor', 'MenuText': QT_TRANSLATE_NOOP("Arch_Level","Level"), 'Accel': "L, V", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Level","Creates a Building Part object that represents a level.")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Level","Creates a building part object that represents a level")} def IsActive(self): @@ -74,7 +74,7 @@ class Arch_Building: return {'Pixmap' : 'Arch_Building', 'MenuText': QT_TRANSLATE_NOOP("Arch_Building","Building"), 'Accel': "B, U", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Building","Creates a building object.")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Building","Creates a building object")} def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimClassification.py b/src/Mod/BIM/bimcommands/BimClassification.py index 18853365d9..f4e97108fb 100644 --- a/src/Mod/BIM/bimcommands/BimClassification.py +++ b/src/Mod/BIM/bimcommands/BimClassification.py @@ -41,11 +41,11 @@ class BIM_Classification: return { "Pixmap": "BIM_Classification", "MenuText": QT_TRANSLATE_NOOP( - "BIM_Classification", "Manage classification..." + "BIM_Classification", "Manage Classification" ), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Classification", - "Manage classification systems and apply classification to objects", + "Manages classification systems and apply classification to objects", ), } diff --git a/src/Mod/BIM/bimcommands/BimCommon.py b/src/Mod/BIM/bimcommands/BimCommon.py index 17e0ee2539..f5d69e2043 100644 --- a/src/Mod/BIM/bimcommands/BimCommon.py +++ b/src/Mod/BIM/bimcommands/BimCommon.py @@ -37,7 +37,7 @@ class BIM_Common: "Pixmap": "Part_Common", "MenuText": QT_TRANSLATE_NOOP("Part_Common", "Intersection"), "ToolTip": QT_TRANSLATE_NOOP( - "Part_Common", "Make an intersection of two shapes" + "Part_Common", "Creates an intersection of two shapes" ), } diff --git a/src/Mod/BIM/bimcommands/BimCompound.py b/src/Mod/BIM/bimcommands/BimCompound.py index dd18bdd0fc..33d9e605b8 100644 --- a/src/Mod/BIM/bimcommands/BimCompound.py +++ b/src/Mod/BIM/bimcommands/BimCompound.py @@ -35,9 +35,9 @@ class BIM_Compound: def GetResources(self): return { "Pixmap": "Part_Compound", - "MenuText": QT_TRANSLATE_NOOP("BIM_Compound", "Make compound"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Compound", "Create Compound"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Compound", "Make a compound of several shapes" + "BIM_Compound", "Create a compound of several shapes" ), } diff --git a/src/Mod/BIM/bimcommands/BimCurtainwall.py b/src/Mod/BIM/bimcommands/BimCurtainwall.py index 739fc1005c..6cfd5a2f6a 100644 --- a/src/Mod/BIM/bimcommands/BimCurtainwall.py +++ b/src/Mod/BIM/bimcommands/BimCurtainwall.py @@ -55,7 +55,7 @@ class Arch_CurtainWall: self.doc = FreeCAD.ActiveDocument sel = FreeCADGui.Selection.getSelection() if len(sel) > 1: - FreeCAD.Console.PrintError(translate("Arch","Please select only one base object or none")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Select only one base object or none")+"\n") elif len(sel) == 1: # build on selection FreeCADGui.Control.closeDialog() diff --git a/src/Mod/BIM/bimcommands/BimCut.py b/src/Mod/BIM/bimcommands/BimCut.py index 0b4f5ac940..44d5ed8bf7 100644 --- a/src/Mod/BIM/bimcommands/BimCut.py +++ b/src/Mod/BIM/bimcommands/BimCut.py @@ -36,7 +36,7 @@ class BIM_Cut: "Pixmap": "Part_Cut", "MenuText": QT_TRANSLATE_NOOP("BIM_Cut", "Difference"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Cut", "Make a difference between two shapes" + "BIM_Cut", "Creates a difference between two shapes" ), } diff --git a/src/Mod/BIM/bimcommands/BimCutPlane.py b/src/Mod/BIM/bimcommands/BimCutPlane.py index 97007403b4..6b6a76c1ac 100644 --- a/src/Mod/BIM/bimcommands/BimCutPlane.py +++ b/src/Mod/BIM/bimcommands/BimCutPlane.py @@ -41,7 +41,7 @@ class Arch_CutPlane: def GetResources(self): return {"Pixmap": "Arch_CutPlane", - "MenuText": QT_TRANSLATE_NOOP("Arch_CutPlane", "Cut with plane"), + "MenuText": QT_TRANSLATE_NOOP("Arch_CutPlane", "Cut With Plane"), "ToolTip": QT_TRANSLATE_NOOP("Arch_CutPlane", "Cut an object with a plane")} def IsActive(self): @@ -124,7 +124,7 @@ class CutPlaneTaskPanel: def retranslateUi(self, TaskPanel): TaskPanel.setWindowTitle(translate("Arch", "Cut Plane")) - self.title.setText(translate("Arch", "Cut Plane options")) + self.title.setText(translate("Arch", "Cut Plane Options")) self.infoText.setText(translate("Arch", "Which side to cut")) self.combobox.addItems([translate("Arch", "Behind"), translate("Arch", "Front")]) diff --git a/src/Mod/BIM/bimcommands/BimDiff.py b/src/Mod/BIM/bimcommands/BimDiff.py index dad3b7620c..18020150a4 100644 --- a/src/Mod/BIM/bimcommands/BimDiff.py +++ b/src/Mod/BIM/bimcommands/BimDiff.py @@ -65,7 +65,7 @@ class BIM_Diff: "", translate( "BIM", - "The document currently viewed must be your main one. The other contains newer objects that you wish to merge into this one. Make sure only the objects you wish to compare are visible in both. Proceed?", + "The current document must be the main one. The other contains newer objects to merge into it. Ensure that only the objects intended for comparison are visible in both documents. Proceed?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -210,7 +210,7 @@ class BIM_Diff: ) toselect.append(obj) else: - print("Object", obj.Label, "doesn't exist yet in main doc") + print("Object", obj.Label, "does not exist yet in main document") toselect.append(obj) additions.append(obj) @@ -220,7 +220,7 @@ class BIM_Diff: "Part::Feature" ): # don't count building parts print( - "Object", obj.Label, "doesn't exist anymore in new doc" + "Object", obj.Label, "does not exist anymore in new document" ) subtractions.append(obj) @@ -262,7 +262,7 @@ class BIM_Diff: print( "Object", obj.Label, - "has no ID and wasn't found in the new doc", + "has no ID and was not found in the new document", ) subtractions.append(obj) @@ -275,7 +275,7 @@ class BIM_Diff: for obj in otherdoc.Objects: if Draft.getType(obj) == "Material": if not obj.Label in matnames: - print("Material", obj.Label, "doesn't exist in main doc") + print("Material", obj.Label, "does not exist in main document") toselect.append(obj) newmats[obj.Label] = obj @@ -347,7 +347,7 @@ class BIM_Diff: + " " + translate( "BIM", - "objects still have the same shape but have a different material. Do you wish to update them in the main document?", + "objects still have the same shape but have a different material. Update them in the main document?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -413,7 +413,7 @@ class BIM_Diff: for name, id in newids.items(): obj = activedoc.getObject(name) if obj: - print("Transferring new id to object", obj.Label) + print("Transferring new ID to object", obj.Label) a = obj.IfcData a["IfcUID"] = id obj.IfcData = a @@ -482,7 +482,7 @@ class BIM_Diff: "", translate( "BIM", - "Do you wish to colorize the objects that have moved in yellow in the other file (to serve as a diff)?", + "Colorize the objects that have moved in yellow in the other file (to serve as a diff)?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -503,7 +503,7 @@ class BIM_Diff: "", translate( "BIM", - "Do you wish to colorize the objects that have been modified in orange in the other file (to serve as a diff)?", + "Colorize the objects that have been modified in orange in the other file (to serve as a diff)?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -526,7 +526,7 @@ class BIM_Diff: + " " + translate( "BIM", - "objects don't exist anymore in the new document. Move them to a 'To Delete' group?", + "objects do not exist anymore in the new document. Move them to a 'To Delete' group?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -543,7 +543,7 @@ class BIM_Diff: "", translate( "BIM", - "Do you wish to colorize the objects that have been removed in red in the other file (to serve as a diff)?", + "Colorize the objects that have been removed in red in the other file (to serve as a diff)?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -562,7 +562,7 @@ class BIM_Diff: "", translate( "BIM", - "Do you wish to colorize the objects that have been added in green in the other file (to serve as a diff)?", + "Colorize the objects that have been added in green in the other file (to serve as a diff)?", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -583,7 +583,7 @@ class BIM_Diff: "", translate( "BIM", - "You need two documents open to run this tool. One which is your main document, and one that contains new objects that you wish to compare against the existing one. Make sure only the objects you wish to compare in both documents are visible.", + "Two documents are required to be open to run this tool. One which is the main document, and one that contains new objects to compare against the existing one. Make sure only the objects to compare in both documents are visible.", ), ) diff --git a/src/Mod/BIM/bimcommands/BimDimensions.py b/src/Mod/BIM/bimcommands/BimDimensions.py index 569343519e..fae43083e6 100644 --- a/src/Mod/BIM/bimcommands/BimDimensions.py +++ b/src/Mod/BIM/bimcommands/BimDimensions.py @@ -40,9 +40,9 @@ class BIM_DimensionAligned(gui_dimensions.Dimension): def GetResources(self): return { "Pixmap": "BIM_DimensionAligned", - "MenuText": QT_TRANSLATE_NOOP("BIM_DimensionAligned", "Aligned dimension"), + "MenuText": QT_TRANSLATE_NOOP("BIM_DimensionAligned", "Aligned Dimension"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_DimensionAligned", "Create an aligned dimension" + "BIM_DimensionAligned", "Creates an aligned dimension" ), "Accel": "D, I", } @@ -57,10 +57,10 @@ class BIM_DimensionHorizontal(gui_dimensions.Dimension): return { "Pixmap": "BIM_DimensionHorizontal.svg", "MenuText": QT_TRANSLATE_NOOP( - "BIM_DimensionHorizontal", "Horizontal dimension" + "BIM_DimensionHorizontal", "Horizontal Dimension" ), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_DimensionHorizontal", "Create an horizontal dimension" + "BIM_DimensionHorizontal", "Creates an horizontal dimension" ), "Accel": "D, H", } @@ -81,10 +81,10 @@ class BIM_DimensionVertical(gui_dimensions.Dimension): return { "Pixmap": "BIM_DimensionVertical", "MenuText": QT_TRANSLATE_NOOP( - "BIM_DimensionVertical", "Vertical dimension" + "BIM_DimensionVertical", "Vertical Dimension" ), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_DimensionVertical", "Create a vertical dimension" + "BIM_DimensionVertical", "Creates a vertical dimension" ), "Accel": "D, V", } diff --git a/src/Mod/BIM/bimcommands/BimEmptyTrash.py b/src/Mod/BIM/bimcommands/BimEmptyTrash.py index 62ca3f0443..eda7af31de 100644 --- a/src/Mod/BIM/bimcommands/BimEmptyTrash.py +++ b/src/Mod/BIM/bimcommands/BimEmptyTrash.py @@ -35,10 +35,10 @@ class BIM_EmptyTrash: def GetResources(self): return { "Pixmap": "BIM_Trash", - "MenuText": QT_TRANSLATE_NOOP("BIM_EmptyTrash", "Clean Trash"), + "MenuText": QT_TRANSLATE_NOOP("BIM_EmptyTrash", "Empty Trash"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_EmptyTrash", - "Deletes from the trash bin all objects that are not used by any other", + "Deletes all objects from the trash bin that are not used by any other", ), } diff --git a/src/Mod/BIM/bimcommands/BimEquipment.py b/src/Mod/BIM/bimcommands/BimEquipment.py index 7abc5aa1e1..ccf2eeaa99 100644 --- a/src/Mod/BIM/bimcommands/BimEquipment.py +++ b/src/Mod/BIM/bimcommands/BimEquipment.py @@ -54,7 +54,7 @@ class Arch_Equipment: s = FreeCADGui.Selection.getSelection() if not s: - FreeCAD.Console.PrintError(translate("Arch","You must select a base shape object and optionally a mesh object")) + FreeCAD.Console.PrintError(translate("Arch","Select a base shape object and optionally a mesh object")) else: base = "" mesh = "" @@ -91,4 +91,4 @@ class Arch_Equipment: return -FreeCADGui.addCommand('Arch_Equipment',Arch_Equipment()) \ No newline at end of file +FreeCADGui.addCommand('Arch_Equipment',Arch_Equipment()) diff --git a/src/Mod/BIM/bimcommands/BimExtrude.py b/src/Mod/BIM/bimcommands/BimExtrude.py index 3fc3091fff..c042d1a3d4 100644 --- a/src/Mod/BIM/bimcommands/BimExtrude.py +++ b/src/Mod/BIM/bimcommands/BimExtrude.py @@ -35,7 +35,7 @@ class BIM_Extrude: def GetResources(self): return { "Pixmap": "Part_Extrude", - "MenuText": QT_TRANSLATE_NOOP("BIM_Extrude", "Extrude..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_Extrude", "Extrude"), "ToolTip": QT_TRANSLATE_NOOP("BIM_Extrude", "Extrudes a selected 2D shape"), } diff --git a/src/Mod/BIM/bimcommands/BimFuse.py b/src/Mod/BIM/bimcommands/BimFuse.py index 717c3b9ff4..301672d784 100644 --- a/src/Mod/BIM/bimcommands/BimFuse.py +++ b/src/Mod/BIM/bimcommands/BimFuse.py @@ -35,7 +35,7 @@ class BIM_Fuse: return { "Pixmap": "Part_Fuse", "MenuText": QT_TRANSLATE_NOOP("Part_Fuse", "Union"), - "ToolTip": QT_TRANSLATE_NOOP("Part_Fuse", "Make a union of several shapes"), + "ToolTip": QT_TRANSLATE_NOOP("Part_Fuse", "Creates a union of several shapes"), } def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimIfcElements.py b/src/Mod/BIM/bimcommands/BimIfcElements.py index 736f488e82..2b0140362d 100644 --- a/src/Mod/BIM/bimcommands/BimIfcElements.py +++ b/src/Mod/BIM/bimcommands/BimIfcElements.py @@ -36,10 +36,10 @@ class BIM_IfcElements: def GetResources(self): return { "Pixmap": "BIM_IfcElements", - "MenuText": QT_TRANSLATE_NOOP("BIM_IfcElements", "Manage IFC elements..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_IfcElements", "Manage IFC Elements"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_IfcElements", - "Manage how the different elements of of your BIM project will be exported to IFC", + "Manages how the different elements of the BIM project will be exported to IFC", ), } diff --git a/src/Mod/BIM/bimcommands/BimIfcExplorer.py b/src/Mod/BIM/bimcommands/BimIfcExplorer.py index d0bbbb2225..9f80eba0a7 100644 --- a/src/Mod/BIM/bimcommands/BimIfcExplorer.py +++ b/src/Mod/BIM/bimcommands/BimIfcExplorer.py @@ -41,8 +41,8 @@ class BIM_IfcExplorer: return { "Pixmap": "IFC", - "MenuText": QT_TRANSLATE_NOOP("BIM_IfcExplorer", "IFC explorer"), - "ToolTip": QT_TRANSLATE_NOOP("BIM_IfcExplorer", "IFC explorer utility"), + "MenuText": QT_TRANSLATE_NOOP("BIM_IfcExplorer", "IFC Explorer"), + "ToolTip": QT_TRANSLATE_NOOP("BIM_IfcExplorer", "Opens the IFC explorer utility"), } def Activated(self): @@ -123,7 +123,7 @@ class BIM_IfcExplorer: # draw the toolbar buttons self.openAction = QtGui.QAction(translate("BIM", "Open"), None) - self.openAction.setToolTip(translate("BIM", "Open another IFC file...")) + self.openAction.setToolTip(translate("BIM", "Open another IFC file")) self.openAction.triggered.connect(self.open) self.openAction.setIcon(QtGui.QIcon(":/icons/document-open.svg")) toolbar.addAction(self.openAction) diff --git a/src/Mod/BIM/bimcommands/BimIfcProperties.py b/src/Mod/BIM/bimcommands/BimIfcProperties.py index 42b107974b..4966c31f99 100644 --- a/src/Mod/BIM/bimcommands/BimIfcProperties.py +++ b/src/Mod/BIM/bimcommands/BimIfcProperties.py @@ -42,11 +42,11 @@ class BIM_IfcProperties: return { "Pixmap": "BIM_IfcProperties", "MenuText": QT_TRANSLATE_NOOP( - "BIM_IfcProperties", "Manage IFC properties..." + "BIM_IfcProperties", "Manage IFC Properties" ), "ToolTip": QT_TRANSLATE_NOOP( "BIM_IfcProperties", - "Manage the different IFC properties of your BIM objects", + "Manages the different IFC properties of the BIM objects", ), } @@ -122,17 +122,17 @@ class BIM_IfcProperties: self.form.labelinfo.setText( self.form.labelinfo.text() + " " - + translate("BIM", "Custom properties sets can be defined in") + + translate("BIM", "Custom property sets can be defined in") + " " + custompath ) # set combos self.form.comboProperty.addItems( - [translate("BIM", "Add property...")] + self.plabels + [translate("BIM", "Add property")] + self.plabels ) self.form.comboPset.addItems( - [translate("BIM", "Add property set..."), translate("BIM", "New...")] + [translate("BIM", "Add property set"), translate("BIM", "New")] + self.psetkeys ) diff --git a/src/Mod/BIM/bimcommands/BimIfcQuantities.py b/src/Mod/BIM/bimcommands/BimIfcQuantities.py index f85f8b61ca..7a0767b30b 100644 --- a/src/Mod/BIM/bimcommands/BimIfcQuantities.py +++ b/src/Mod/BIM/bimcommands/BimIfcQuantities.py @@ -70,11 +70,11 @@ class BIM_IfcQuantities: return { "Pixmap": "BIM_IfcQuantities", "MenuText": QT_TRANSLATE_NOOP( - "BIM_IfcQuantities", "Manage IFC quantities..." + "BIM_IfcQuantities", "Manage IFC Quantities" ), "ToolTip": QT_TRANSLATE_NOOP( "BIM_IfcQuantities", - "Manage how the quantities of different elements of of your BIM project will be exported to IFC", + "Manages how the quantities of different elements of the BIM project will be exported to IFC", ), } diff --git a/src/Mod/BIM/bimcommands/BimImagePlane.py b/src/Mod/BIM/bimcommands/BimImagePlane.py index ec6056ee9f..44486ed9f3 100644 --- a/src/Mod/BIM/bimcommands/BimImagePlane.py +++ b/src/Mod/BIM/bimcommands/BimImagePlane.py @@ -35,7 +35,7 @@ class BIM_ImagePlane: def GetResources(self): return { "Pixmap": "BIM_ImagePlane.svg", - "MenuText": QT_TRANSLATE_NOOP("BIM_ImagePlane", "Image plane"), + "MenuText": QT_TRANSLATE_NOOP("BIM_ImagePlane", "Image Plane"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_ImagePlane", "Creates a plane from an image" ), @@ -55,7 +55,7 @@ class BIM_ImagePlane: self.opposite = None (filename, _filter) = QtGui.QFileDialog.getOpenFileName( QtGui.QApplication.activeWindow(), - translate("BIM", "Select image"), + translate("BIM", "Select Image"), None, translate("BIM", "Image file (*.png *.jpg *.bmp)"), ) diff --git a/src/Mod/BIM/bimcommands/BimLayers.py b/src/Mod/BIM/bimcommands/BimLayers.py index f7c3daea5b..cd459e954f 100644 --- a/src/Mod/BIM/bimcommands/BimLayers.py +++ b/src/Mod/BIM/bimcommands/BimLayers.py @@ -54,9 +54,9 @@ class BIM_Layers: return { "Pixmap": "BIM_Layers", - "MenuText": QT_TRANSLATE_NOOP("BIM_Layers", "Manage layers..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_Layers", "Manage Layers"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Layers", "Set/modify the different layers of your BIM project" + "BIM_Layers", "Sets/modifies the different layers of your BIM project" ), } diff --git a/src/Mod/BIM/bimcommands/BimLibrary.py b/src/Mod/BIM/bimcommands/BimLibrary.py index 717fc59ec4..1c75fba37d 100644 --- a/src/Mod/BIM/bimcommands/BimLibrary.py +++ b/src/Mod/BIM/bimcommands/BimLibrary.py @@ -85,7 +85,7 @@ class BIM_Library: def GetResources(self): return { "Pixmap": "BIM_Library", - "MenuText": QT_TRANSLATE_NOOP("BIM_Library", "Objects library"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Library", "Objects Library"), "ToolTip": QT_TRANSLATE_NOOP("BIM_Library", "Opens the objects library"), } @@ -308,7 +308,7 @@ class BIM_Library_TaskPanel: try: # check if the working document is saved if FreeCAD.getDocument(self.mainDocName).FileName == "": - FreeCAD.Console.PrintWarning(translate("BIM","Please save the working file before linking.")+"\n") + FreeCAD.Console.PrintWarning(translate("BIM","Save the working file before linking.")+"\n") else: self.previewOn = PARAMS.GetBool("3DPreview", False) self.linked = True @@ -501,7 +501,7 @@ class BIM_Library_TaskPanel: templibfile = os.path.join(TEMPLIBPATH, LIBINDEXFILE) if not os.path.exists(templibfile): FreeCAD.Console.PrintError( - translate("BIM", "No structure in cache. Please refresh.") + "\n" + translate("BIM", "No structure in cache. Refresh required.") + "\n" ) return {} import sys @@ -794,7 +794,7 @@ class BIM_Library_TaskPanel: j = json.loads(r.content) if j["truncated"]: print( - "WARNING: The fetched content exceeds maximum Github allowance and is truncated" + "WARNING: The fetched content exceeds maximum GitHub allowance and is truncated" ) t = j["tree"] for f in t: @@ -1029,7 +1029,7 @@ if FreeCAD.GuiUp: from PySide import QtCore, QtGui class LibraryModel(QtGui.QFileSystemModel): - "a custom QFileSystemModel that displays freecad file icons" + "a custom QFileSystemModel that displays FreeCAD file icons" def __init__(self): diff --git a/src/Mod/BIM/bimcommands/BimMaterial.py b/src/Mod/BIM/bimcommands/BimMaterial.py index 68fd274deb..dcbbd9f018 100644 --- a/src/Mod/BIM/bimcommands/BimMaterial.py +++ b/src/Mod/BIM/bimcommands/BimMaterial.py @@ -102,7 +102,7 @@ class BIM_Material: searchLayout = QtGui.QHBoxLayout() searchLayout.setSpacing(2) searchBox = MatLineEdit(self.dlg) - searchBox.setPlaceholderText(translate("BIM", "Search...")) + searchBox.setPlaceholderText(translate("BIM", "Search…")) searchBox.setToolTip(translate("BIM", "Searches object labels")) self.dlg.searchBox = searchBox searchLayout.addWidget(searchBox) @@ -184,7 +184,7 @@ class BIM_Material: context1.triggered.connect(self.onStartRename) context2 = self.contextMenu.addAction(translate("BIM", "Duplicate")) context2.triggered.connect(self.onDuplicate) - context3 = self.contextMenu.addAction(translate("BIM", "Merge to...")) + context3 = self.contextMenu.addAction(translate("BIM", "Merge To…")) context3.triggered.connect(self.onMergeTo) context4 = self.contextMenu.addAction(translate("BIM", "Delete")) context4.triggered.connect(self.onDelete) @@ -629,7 +629,7 @@ class Arch_MaterialToolsCommand: def GetCommands(self): return tuple(['Arch_Material','Arch_MultiMaterial']) def GetResources(self): - return { 'MenuText': QT_TRANSLATE_NOOP("Arch_MaterialTools",'Material tools'), + return { 'MenuText': QT_TRANSLATE_NOOP("Arch_MaterialTools",'Material Tools'), 'ToolTip': QT_TRANSLATE_NOOP("Arch_MaterialTools",'Material tools') } def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimMoveView.py b/src/Mod/BIM/bimcommands/BimMoveView.py index 8047aed758..1c64ac763b 100644 --- a/src/Mod/BIM/bimcommands/BimMoveView.py +++ b/src/Mod/BIM/bimcommands/BimMoveView.py @@ -35,7 +35,7 @@ class BIM_MoveView: def GetResources(self): return { "Pixmap": "BIM_MoveView", - "MenuText": QT_TRANSLATE_NOOP("BIM_MoveView", "Move view..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_MoveView", "Move View"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_MoveView", "Moves this view to an existing page" ), diff --git a/src/Mod/BIM/bimcommands/BimOffset.py b/src/Mod/BIM/bimcommands/BimOffset.py index ed21b974c1..975ff2c0e5 100644 --- a/src/Mod/BIM/bimcommands/BimOffset.py +++ b/src/Mod/BIM/bimcommands/BimOffset.py @@ -34,7 +34,7 @@ class BIM_Offset2D: def GetResources(self): return {"Pixmap":"Part_Offset2D", - "MenuText": QT_TRANSLATE_NOOP("Part_Offset2D", "2D Offset..."), + "MenuText": QT_TRANSLATE_NOOP("Part_Offset2D", "2D Offset"), "ToolTip": QT_TRANSLATE_NOOP( "Part_Offset2D", "Utility to offset planar shapes" ), diff --git a/src/Mod/BIM/bimcommands/BimPanel.py b/src/Mod/BIM/bimcommands/BimPanel.py index bd9d8dff3b..66d3dee306 100644 --- a/src/Mod/BIM/bimcommands/BimPanel.py +++ b/src/Mod/BIM/bimcommands/BimPanel.py @@ -478,7 +478,7 @@ class Arch_PanelGroup: return tuple(['Arch_Panel','Arch_Panel_Cut','Arch_Panel_Sheet','Arch_Nest']) def GetResources(self): - return { 'MenuText': QT_TRANSLATE_NOOP("Arch_PanelTools",'Panel tools'), + return { 'MenuText': QT_TRANSLATE_NOOP("Arch_PanelTools",'Panel Tools'), 'ToolTip': QT_TRANSLATE_NOOP("Arch_PanelTools",'Panel tools') } diff --git a/src/Mod/BIM/bimcommands/BimPipe.py b/src/Mod/BIM/bimcommands/BimPipe.py index 4b6be50799..69d37cc682 100644 --- a/src/Mod/BIM/bimcommands/BimPipe.py +++ b/src/Mod/BIM/bimcommands/BimPipe.py @@ -42,7 +42,7 @@ class Arch_Pipe: return {'Pixmap' : 'Arch_Pipe', 'MenuText': QT_TRANSLATE_NOOP("Arch_Pipe","Pipe"), 'Accel': "P, I", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Pipe","Creates a pipe object from a given Wire or Line")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Pipe","Creates a pipe object from a given wire or line")} def IsActive(self): @@ -93,12 +93,12 @@ class Arch_PipeConnector: import Draft s = FreeCADGui.Selection.getSelection() if not (len(s) in [2,3]): - FreeCAD.Console.PrintError(translate("Arch","Please select exactly 2 or 3 Pipe objects")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Select exactly 2 or 3 pipe objects")+"\n") return o = "[" for obj in s: if Draft.getType(obj) != "Pipe": - FreeCAD.Console.PrintError(translate("Arch","Please select only Pipe objects")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Select only pipe objects")+"\n") return o += "FreeCAD.ActiveDocument."+obj.Name+"," o += "]" @@ -116,7 +116,7 @@ class Arch_PipeGroupCommand: def GetCommands(self): return tuple(['Arch_Pipe','Arch_PipeConnector']) def GetResources(self): - return { 'MenuText': QT_TRANSLATE_NOOP("Arch_PipeTools",'Pipe tools'), + return { 'MenuText': QT_TRANSLATE_NOOP("Arch_PipeTools",'Pipe Tools'), 'ToolTip': QT_TRANSLATE_NOOP("Arch_PipeTools",'Pipe tools') } def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimPreflight.py b/src/Mod/BIM/bimcommands/BimPreflight.py index 5f29d28b3a..00b178e02d 100644 --- a/src/Mod/BIM/bimcommands/BimPreflight.py +++ b/src/Mod/BIM/bimcommands/BimPreflight.py @@ -61,7 +61,7 @@ class BIM_Preflight: def GetResources(self): return { "Pixmap": "BIM_Preflight", - "MenuText": QT_TRANSLATE_NOOP("BIM_Preflight", "Preflight checks..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_Preflight", "Preflight Checks"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Preflight", "Checks several characteristics of this model before exporting to IFC", @@ -315,7 +315,7 @@ class BIM_Preflight_TaskPanel: msg = ( translate( "BIM", - "ifcopenshell is not installed on your system or not available to FreeCAD. This library is responsible for IFC support in FreeCAD, and therefore IFC support is currently disabled. Check %1 to obtain more information.", + "ifcopenshell is not installed on the system or not available to FreeCAD. This library is responsible for IFC support in FreeCAD, and therefore IFC support is currently disabled. Check %1 to obtain more information.", ).replace("%1", "https://www.freecadweb.org/wiki/Extra_python_modules#IfcOpenShell") + " " ) @@ -342,7 +342,7 @@ class BIM_Preflight_TaskPanel: msg = ( translate( "BIM", - "The version of Ifcopenshell installed on your system could not be parsed", + "The version of Ifcopenshell installed on the system could not be parsed", ) + " " ) @@ -354,7 +354,7 @@ class BIM_Preflight_TaskPanel: msg += ( translate( "BIM", - "The version of Ifcopenshell installed on your system will produce files with this schema version:", + "The version of Ifcopenshell installed on the system will produce files with this schema version:", ) + "\n\n" ) @@ -466,7 +466,7 @@ class BIM_Preflight_TaskPanel: msg += ( translate( "BIM", - "The following Building objects have been found to not be included in any Site. You can resolve the situation by creating a Site object, if none is present in your model, and drag and drop the Building objects into it in the tree view:", + "The following building objects have been found to not be included in any Site. You can resolve the situation by creating a Site object, if none is present in your model, and drag and drop the building objects into it in the tree view:", ) + "\n\n" ) @@ -516,7 +516,7 @@ class BIM_Preflight_TaskPanel: msg += ( translate( "BIM", - 'The following Building Storey (BuildingParts with their IFC role set as "Building Storey") objects have been found to not be included in any Building. You can resolve the situation by creating a Building object, if none is present in your model, and drag and drop the Building Storey objects into it in the tree view:', + 'The following building storey (building parts with their IFC role set as "building storey") objects have been found to not be included in any building. Resolve the situation by creating a building object, if none is present in the model, and drag and drop the building storey objects into it in the tree view:', ) + "\n\n" ) @@ -577,7 +577,7 @@ class BIM_Preflight_TaskPanel: msg += ( translate( "BIM", - 'The following BIM objects have been found to not be included in any Building Storey (BuildingParts with their IFC role set as "Building Storey"). You can resolve the situation by creating a Building Storey object, if none is present in your model, and drag and drop these objects into it in the tree view:', + 'The following BIM objects have been found to not be included in any building storey (building parts with their IFC role set as "building storey"). Resolve the situation by creating a building storey object, if none is present in the model, and drag and drop these objects into it in the tree view:', ) + "\n\n" ) @@ -719,7 +719,7 @@ class BIM_Preflight_TaskPanel: msg += ( translate( "BIM", - "The objects below have Length, Width or Height properties, but these properties won't be explicitly exported to IFC. This is not necessarily an issue, unless you specifically want these quantities to be exported:", + "The objects below have length, width or height properties, but these properties won't be explicitly exported to IFC. This is not necessarily an issue, unless these quantities are desired to be exported:", ) + "\n\n" ) @@ -727,7 +727,7 @@ class BIM_Preflight_TaskPanel: msg += o.Label + "\n" msg += "\n" + translate( "BIM", - "To enable exporting of these quantities, use the IFC quantities manager tool located under menu Manage -> Manage IFC Quantities...", + "To enable exporting of these quantities, use the IFC quantities manager tool located under menu Manage -> Manage IFC Quantities", ) if msg: self.failed(test) @@ -803,7 +803,7 @@ class BIM_Preflight_TaskPanel: msg += o.Label + "\n" msg += "\n" + translate( "BIM", - "To add common property sets to these objects, use the IFC properties manager tool located under menu Manage -> Manage IFC Properties...", + "To add common property sets to these objects, use the IFC properties manager tool located under menu Manage -> Manage IFC Properties", ) if msg: self.failed(test) @@ -895,7 +895,7 @@ class BIM_Preflight_TaskPanel: ) msg += translate( "BIM", - "To fix the property sets of these objects, use the IFC properties manager tool located under menu Manage -> Manage IFC Properties...", + "To fix the property sets of these objects, use the IFC properties manager tool located under menu Manage -> Manage IFC Properties", ) if msg: self.failed(test) @@ -1121,7 +1121,7 @@ class BIM_Preflight_TaskPanel: "\n" + translate( "BIM", - 'An additional object, called "TinyLinesResult" has been added to this model, and selected. It contains all the tiny lines found, so you can inspect them and fix the needed objects. Be sure to delete the TinyLinesResult object when you are done!', + 'An additional object, called "TinyLinesResult" has been added to this model, and selected. It contains all the tiny lines found, for inspection. Be sure to delete the TinyLinesResult object when done!', ) + "\n\n" ) diff --git a/src/Mod/BIM/bimcommands/BimProject.py b/src/Mod/BIM/bimcommands/BimProject.py index a28646476b..f5b935b67e 100644 --- a/src/Mod/BIM/bimcommands/BimProject.py +++ b/src/Mod/BIM/bimcommands/BimProject.py @@ -37,7 +37,7 @@ class BIM_Project: "Pixmap": "BIM_Project", "MenuText": QT_TRANSLATE_NOOP("BIM_Project", "Project"), "ToolTip": QT_TRANSLATE_NOOP("BIM_Project", - "Create an empty NativeIFC project"), + "Creates an empty NativeIFC project"), } def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimProjectManager.py b/src/Mod/BIM/bimcommands/BimProjectManager.py index ebde0fd12b..0f12a59e27 100644 --- a/src/Mod/BIM/bimcommands/BimProjectManager.py +++ b/src/Mod/BIM/bimcommands/BimProjectManager.py @@ -40,9 +40,9 @@ class BIM_ProjectManager: return { "Pixmap": "BIM_ProjectManager", - "MenuText": QT_TRANSLATE_NOOP("BIM_ProjectManager", "Setup project..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_ProjectManager", "Setup Project…"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_ProjectManager", "Create or manage a BIM project" + "BIM_ProjectManager", "Creates or manages a BIM project" ), } @@ -482,7 +482,7 @@ class BIM_ProjectManager: def fillPresets(self): self.form.presets.clear() - self.form.presets.addItem(translate("BIM", "User preset...")) + self.form.presets.addItem(translate("BIM", "User preset")) presetdir = os.path.join(FreeCAD.getUserAppDataDir(), "BIM") if os.path.isdir(presetdir): for f in os.listdir(presetdir): @@ -793,7 +793,7 @@ class BIM_ProjectManager: ) FreeCAD.Console.PrintMessage( - translate("BIM", "Template successfully loaded into current document") + translate("BIM", "Template successfully loaded into the current document") + "\n" ) self.reject() diff --git a/src/Mod/BIM/bimcommands/BimRebar.py b/src/Mod/BIM/bimcommands/BimRebar.py index 0c2bbd418a..d59fdc7282 100644 --- a/src/Mod/BIM/bimcommands/BimRebar.py +++ b/src/Mod/BIM/bimcommands/BimRebar.py @@ -42,7 +42,7 @@ class Arch_Rebar: return {'Pixmap' : 'Arch_Rebar', 'MenuText': QT_TRANSLATE_NOOP("Arch_Rebar","Custom Rebar"), 'Accel': "R, B", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Rebar","Creates a Reinforcement bar from the selected face of solid object and/or a sketch")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Rebar","Creates a reinforcement bar from the selected face of solid object and/or a sketch")} def IsActive(self): @@ -90,7 +90,7 @@ class Arch_Rebar: FreeCAD.ActiveDocument.recompute() return - FreeCAD.Console.PrintMessage(translate("Arch","Please select a base face on a structural object")+"\n") + FreeCAD.Console.PrintMessage(translate("Arch","Select a base face on a structural object")+"\n") FreeCADGui.Control.closeDialog() FreeCADGui.Control.showDialog(ArchComponent.SelectionTaskPanel()) FreeCAD.ArchObserver = ArchComponent.ArchSelectionObserver(nextCommand="Arch_Rebar") diff --git a/src/Mod/BIM/bimcommands/BimReextrude.py b/src/Mod/BIM/bimcommands/BimReextrude.py index 2258f25422..71d263e213 100644 --- a/src/Mod/BIM/bimcommands/BimReextrude.py +++ b/src/Mod/BIM/bimcommands/BimReextrude.py @@ -35,9 +35,9 @@ class BIM_Reextrude: def GetResources(self): return { "Pixmap": "BIM_Reextrude", - "MenuText": QT_TRANSLATE_NOOP("BIM_Reextrude", "Reextrude"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Reextrude", "Re-Extrude"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Reextrude", "Recreates an extruded Structure from a selected face" + "BIM_Reextrude", "Recreates an extruded structure from a selected face" ), } @@ -159,7 +159,7 @@ class BIM_Reextrude: else: FreeCAD.Console.PrintError( - translate("BIM", "Error: Please select exactly one base face") + "\n" + translate("BIM", "Error: Select exactly one base face") + "\n" ) diff --git a/src/Mod/BIM/bimcommands/BimReference.py b/src/Mod/BIM/bimcommands/BimReference.py index 1e6cb9d149..5c79c269a0 100644 --- a/src/Mod/BIM/bimcommands/BimReference.py +++ b/src/Mod/BIM/bimcommands/BimReference.py @@ -40,7 +40,7 @@ class Arch_Reference: def GetResources(self): return {'Pixmap' : 'Arch_Reference', - 'MenuText': QT_TRANSLATE_NOOP("Arch_Reference","External reference"), + 'MenuText': QT_TRANSLATE_NOOP("Arch_Reference","External Reference"), 'Accel': "E, X", 'ToolTip': QT_TRANSLATE_NOOP("Arch_Reference","Creates an external reference object")} diff --git a/src/Mod/BIM/bimcommands/BimReorder.py b/src/Mod/BIM/bimcommands/BimReorder.py index 825e2a7c28..6bbe6d1cdd 100644 --- a/src/Mod/BIM/bimcommands/BimReorder.py +++ b/src/Mod/BIM/bimcommands/BimReorder.py @@ -35,10 +35,10 @@ class BIM_Reorder: def GetResources(self): return { "Pixmap": "BIM_Reorder", - "MenuText": QT_TRANSLATE_NOOP("BIM_Reorder", "Reorder children"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Reorder", "Reorder Children"), # 'Accel': "R, D", "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Reorder", "Reorder children of selected object" + "BIM_Reorder", "Reorders children of the selected object" ), } diff --git a/src/Mod/BIM/bimcommands/BimResetCloneColors.py b/src/Mod/BIM/bimcommands/BimResetCloneColors.py index 1a4b558ba1..bd57d55951 100644 --- a/src/Mod/BIM/bimcommands/BimResetCloneColors.py +++ b/src/Mod/BIM/bimcommands/BimResetCloneColors.py @@ -35,7 +35,7 @@ class BIM_ResetCloneColors: def GetResources(self): return { "Pixmap": "BIM_ResetCloneColors", - "MenuText": QT_TRANSLATE_NOOP("BIM_ResetCloneColors", "Reset colors"), + "MenuText": QT_TRANSLATE_NOOP("BIM_ResetCloneColors", "Reset Colors"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_ResetCloneColors", "Resets the colors of this object from its cloned original", diff --git a/src/Mod/BIM/bimcommands/BimSetup.py b/src/Mod/BIM/bimcommands/BimSetup.py index 7f08f42bfd..f7f843eb79 100644 --- a/src/Mod/BIM/bimcommands/BimSetup.py +++ b/src/Mod/BIM/bimcommands/BimSetup.py @@ -39,9 +39,9 @@ class BIM_Setup: def GetResources(self): return { "Pixmap": ":icons/preferences-system.svg", - "MenuText": QT_TRANSLATE_NOOP("BIM_Setup", "BIM Setup..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_Setup", "BIM Setup"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Setup", "Set some common FreeCAD preferences for BIM workflow" + "BIM_Setup", "Sets common FreeCAD preferences for a BIM workflow" ), } @@ -140,7 +140,7 @@ class BIM_Setup: + ",".join(m) + ". " + translate( - "BIM", "You can install them from menu Tools -> Addon manager." + "BIM", "Install them from menu Tools -> Addon Manager." ) ) self.form.labelMissingWorkbenches.setText(t) @@ -657,7 +657,7 @@ class BIM_Setup: translate("BIM", "IfcOpenShell not found"), translate( "BIM", - "IfcOpenShell is needed to import and export IFC files. It appears to be missing on your system. Would you like to download and install it now? It will be installed in FreeCAD's Macros directory.", + "IfcOpenShell is needed to import and export IFC files. It appears to be missing on the system. Download and install it now? It will be installed in FreeCAD's macros directory.", ), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No, @@ -721,14 +721,14 @@ class BIM_Setup: break else: FreeCAD.Console.PrintWarning( - "Unable to find a build for your version therefore falling back to a pip install" + "Unable to find a build for this version, therefore falling back to a pip install" ) try: import pip except ModuleNotFoundError: FreeCAD.Console.PrintError( - "Please install pip on your system, restart FreeCAD," - " change to BIM Wb and use Utils menu > ifcOpenShell update" + "Pnstall pip on your system, restart FreeCAD," + " change to the BIM workbench and navigate the menu: Utils > ifcOpenShell Update" ) return from nativeifc import ifc_openshell diff --git a/src/Mod/BIM/bimcommands/BimShape2DView.py b/src/Mod/BIM/bimcommands/BimShape2DView.py index 6586f3cad2..02239b92e1 100644 --- a/src/Mod/BIM/bimcommands/BimShape2DView.py +++ b/src/Mod/BIM/bimcommands/BimShape2DView.py @@ -38,7 +38,7 @@ class BIM_Shape2DView(gui_shape2dview.Shape2DView): def GetResources(self): d = super().GetResources() d["Pixmap"] = "Arch_BuildingPart_Tree" - d["MenuText"] = QT_TRANSLATE_NOOP("BIM_Shape2DView", "Section view") + d["MenuText"] = QT_TRANSLATE_NOOP("BIM_Shape2DView", "Section View") d['Accel'] = "V, V" return d @@ -110,7 +110,7 @@ class BIM_Shape2DCut(BIM_Shape2DView): def GetResources(self): d = super().GetResources() d["Pixmap"] = "Arch_View_Cut" - d["MenuText"] = QT_TRANSLATE_NOOP("BIM_Shape2DView", "Section cut") + d["MenuText"] = QT_TRANSLATE_NOOP("BIM_Shape2DView", "Section Cut") d['Accel'] = "V, C" return d diff --git a/src/Mod/BIM/bimcommands/BimSimpleCopy.py b/src/Mod/BIM/bimcommands/BimSimpleCopy.py index 4f5a4d4b17..d9e2d95488 100644 --- a/src/Mod/BIM/bimcommands/BimSimpleCopy.py +++ b/src/Mod/BIM/bimcommands/BimSimpleCopy.py @@ -35,9 +35,9 @@ class BIM_SimpleCopy: def GetResources(self): return { "Pixmap": "Tree_Part", - "MenuText": QT_TRANSLATE_NOOP("BIM_SimpleCopy", "Create simple copy"), + "MenuText": QT_TRANSLATE_NOOP("BIM_SimpleCopy", "Create Simple Copy"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_SimpleCopy", "Create a simple non-parametric copy" + "BIM_SimpleCopy", "Creates a simple non-parametric copy" ), } diff --git a/src/Mod/BIM/bimcommands/BimSite.py b/src/Mod/BIM/bimcommands/BimSite.py index 251f14505c..bea052c76e 100644 --- a/src/Mod/BIM/bimcommands/BimSite.py +++ b/src/Mod/BIM/bimcommands/BimSite.py @@ -45,7 +45,7 @@ class Arch_Site: return {'Pixmap' : 'Arch_Site', 'MenuText': QT_TRANSLATE_NOOP("Arch_Site","Site"), 'Accel': "S, I", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Site","Creates a site including selected objects.")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Site","Creates a site including selected objects")} def IsActive(self): diff --git a/src/Mod/BIM/bimcommands/BimTDView.py b/src/Mod/BIM/bimcommands/BimTDView.py index 777e0d9d48..3d898e5884 100644 --- a/src/Mod/BIM/bimcommands/BimTDView.py +++ b/src/Mod/BIM/bimcommands/BimTDView.py @@ -35,12 +35,12 @@ class BIM_TDView: def GetResources(self): return { "Pixmap": "BIM_InsertView", - "MenuText": QT_TRANSLATE_NOOP("BIM_TDView", "Insert view"), + "MenuText": QT_TRANSLATE_NOOP("BIM_TDView", "New View"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_TDView", "Inserts a drawing view on a page.\n" "To choose where to insert the view when multiple pages are available,\n" - "select both the view and the page before you execute the command.", + "select both the view and the page before executing the command.", ), 'Accel': "V, I", } @@ -70,7 +70,7 @@ class BIM_TDView: FreeCAD.Console.PrintError( translate( "BIM", - "No section view or Draft objects selected, or no page selected, or no page found in document", + "No section view, Draft object, or page found or selected in the document", ) + "\n" ) diff --git a/src/Mod/BIM/bimcommands/BimTogglePanels.py b/src/Mod/BIM/bimcommands/BimTogglePanels.py index d5dc898d6e..05c03dad31 100644 --- a/src/Mod/BIM/bimcommands/BimTogglePanels.py +++ b/src/Mod/BIM/bimcommands/BimTogglePanels.py @@ -37,9 +37,9 @@ class BIM_TogglePanels: def GetResources(self): return { "Pixmap": "BIM_TogglePanels", - "MenuText": QT_TRANSLATE_NOOP("BIM_TogglePanels", "Toggle bottom panels"), + "MenuText": QT_TRANSLATE_NOOP("BIM_TogglePanels", "Toggle Bottom Panels"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_TogglePanels", "Toggle bottom dock panels on/off" + "BIM_TogglePanels", "Toggles bottom dock panels on/off" ), "Accel": "Ctrl+0", } diff --git a/src/Mod/BIM/bimcommands/BimTrash.py b/src/Mod/BIM/bimcommands/BimTrash.py index b073155c9c..ddec6525af 100644 --- a/src/Mod/BIM/bimcommands/BimTrash.py +++ b/src/Mod/BIM/bimcommands/BimTrash.py @@ -38,7 +38,7 @@ class BIM_Trash: "Pixmap": "BIM_Trash", "MenuText": QT_TRANSLATE_NOOP("BIM_Trash", "Move to Trash"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Trash", "Moves the selected objects to the Trash folder" + "BIM_Trash", "Moves the selected objects to the trash folder" ), "Accel": "Shift+Del", } @@ -76,7 +76,7 @@ class BIM_EmptyTrash: def GetResources(self): return { "Pixmap": "BIM_Trash", - "MenuText": QT_TRANSLATE_NOOP("BIM_EmptyTrash", "Clean Trash"), + "MenuText": QT_TRANSLATE_NOOP("BIM_EmptyTrash", "Empty Trash"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_EmptyTrash", "Deletes from the trash bin all objects that are not used by any other", diff --git a/src/Mod/BIM/bimcommands/BimTruss.py b/src/Mod/BIM/bimcommands/BimTruss.py index b2d27e08b2..5a2595e232 100644 --- a/src/Mod/BIM/bimcommands/BimTruss.py +++ b/src/Mod/BIM/bimcommands/BimTruss.py @@ -42,7 +42,7 @@ class Arch_Truss: return {'Pixmap' : 'Arch_Truss', 'MenuText': QT_TRANSLATE_NOOP("Arch_Truss","Truss"), 'Accel': "T, U", - 'ToolTip': QT_TRANSLATE_NOOP("Arch_Truss","Creates a truss object from selected line or from scratch")} + 'ToolTip': QT_TRANSLATE_NOOP("Arch_Truss","Creates a truss object from the selected line or from scratch")} def IsActive(self): @@ -54,7 +54,7 @@ class Arch_Truss: self.doc = FreeCAD.ActiveDocument sel = FreeCADGui.Selection.getSelection() if len(sel) > 1: - FreeCAD.Console.PrintError(translate("Arch","Please select only one base object or none")+"\n") + FreeCAD.Console.PrintError(translate("Arch","Select only one base object or none")+"\n") elif len(sel) == 1: # build on selection basename = "FreeCAD.ActiveDocument."+FreeCADGui.Selection.getSelection()[0].Name diff --git a/src/Mod/BIM/bimcommands/BimTutorial.py b/src/Mod/BIM/bimcommands/BimTutorial.py index 24fefe5ab5..582dc38db5 100644 --- a/src/Mod/BIM/bimcommands/BimTutorial.py +++ b/src/Mod/BIM/bimcommands/BimTutorial.py @@ -133,7 +133,7 @@ class BIM_Tutorial: FreeCAD.Console.PrintError( translate( "BIM", - "Unable to access the tutorial. Verify that you are online (This is needed only once).", + "Unable to access the tutorial. Verify the internet connection (This is needed only once).", ) + "\n" ) @@ -163,7 +163,7 @@ class BIM_Tutorial: # download images (QTextEdit cannot load online images) self.form.textEdit.setHtml( - html.replace("inserthere", translate("BIM", "Downloading images...")) + html.replace("inserthere", translate("BIM", "Downloading images…")) ) nd = [] for descr in self.descriptions: diff --git a/src/Mod/BIM/bimcommands/BimUnclone.py b/src/Mod/BIM/bimcommands/BimUnclone.py index 29cabdc532..37a76d2405 100644 --- a/src/Mod/BIM/bimcommands/BimUnclone.py +++ b/src/Mod/BIM/bimcommands/BimUnclone.py @@ -39,7 +39,7 @@ class BIM_Unclone: "MenuText": QT_TRANSLATE_NOOP("BIM_Unclone", "Unclone"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Unclone", - "Makes a selected clone object independent from its original", + "Creates a selected clone object independent from its original", ), } @@ -131,7 +131,7 @@ class BIM_Unclone: elif Draft.getType(obj) == "Clone": FreeCAD.Console.PrintError( - translate("BIM", "Draft Clones are not supported yet!") + "\n" + translate("BIM", "Draft clones are not supported yet!") + "\n" ) else: FreeCAD.Console.PrintError( @@ -139,7 +139,7 @@ class BIM_Unclone: ) else: FreeCAD.Console.PrintError( - translate("BIM", "Please select exactly one object") + "\n" + translate("BIM", "Select exactly one object") + "\n" ) diff --git a/src/Mod/BIM/bimcommands/BimUngroup.py b/src/Mod/BIM/bimcommands/BimUngroup.py index 3aad62d18f..78bf4bb8db 100644 --- a/src/Mod/BIM/bimcommands/BimUngroup.py +++ b/src/Mod/BIM/bimcommands/BimUngroup.py @@ -35,7 +35,7 @@ class BIM_Ungroup: def GetResources(self): return { "Pixmap": "Draft_AddToGroup", - "MenuText": QT_TRANSLATE_NOOP("BIM_Convert", "Remove from group"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Convert", "Remove From Group"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Convert", "Removes this object from its parent group" ), diff --git a/src/Mod/BIM/bimcommands/BimViews.py b/src/Mod/BIM/bimcommands/BimViews.py index 64cae3cc5d..f56e18300e 100644 --- a/src/Mod/BIM/bimcommands/BimViews.py +++ b/src/Mod/BIM/bimcommands/BimViews.py @@ -41,7 +41,7 @@ class BIM_Views: def GetResources(self): return { "Pixmap": "BIM_Views", - "MenuText": QT_TRANSLATE_NOOP("BIM_Views", "Views manager"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Views", "Views Manager"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Views", "Shows or hides the views manager" ), @@ -119,7 +119,7 @@ class BIM_Views: # set tooltips self.dialog.buttonAddLevel.setToolTip(translate("BIM","Creates a new level")) - self.dialog.buttonAddProxy.setToolTip(translate("BIM","Creates a new Working Plane Proxy")) + self.dialog.buttonAddProxy.setToolTip(translate("BIM","Creates a new working plane proxy")) self.dialog.buttonDelete.setToolTip(translate("BIM","Deletes the selected item")) self.dialog.buttonToggle.setToolTip(translate("BIM","Toggles selected items on/off")) self.dialog.buttonIsolate.setToolTip(translate("BIM","Turns all items off except the selected ones")) diff --git a/src/Mod/BIM/bimcommands/BimWPCommands.py b/src/Mod/BIM/bimcommands/BimWPCommands.py index 79ee68b008..0b1bf710fd 100644 --- a/src/Mod/BIM/bimcommands/BimWPCommands.py +++ b/src/Mod/BIM/bimcommands/BimWPCommands.py @@ -37,7 +37,7 @@ class BIM_SetWPFront: "Pixmap": "view-front.svg", "MenuText": QT_TRANSLATE_NOOP("BIM_SetWPFront", "Working Plane Front"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_SetWPFront", "Set the working plane to Front" + "BIM_SetWPFront", "Sets the working plane to Front" ), "Accel": "W,P,1", } @@ -54,7 +54,7 @@ class BIM_SetWPSide: "Pixmap": "view-right.svg", "MenuText": QT_TRANSLATE_NOOP("BIM_SetWPSide", "Working Plane Side"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_SetWPSide", "Set the working plane to Side" + "BIM_SetWPSide", "Sets the working plane to Side" ), "Accel": "W,P,3", } @@ -71,7 +71,7 @@ class BIM_SetWPTop: "Pixmap": "view-top.svg", "MenuText": QT_TRANSLATE_NOOP("BIM_SetWPTop", "Working Plane Top"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_SetWPTop", "Set the working plane to Top" + "BIM_SetWPTop", "Sets the working plane to Top" ), "Accel": "W,P,2", } diff --git a/src/Mod/BIM/bimcommands/BimWall.py b/src/Mod/BIM/bimcommands/BimWall.py index bfa3293d48..babbe06235 100644 --- a/src/Mod/BIM/bimcommands/BimWall.py +++ b/src/Mod/BIM/bimcommands/BimWall.py @@ -283,7 +283,7 @@ class Arch_Wall: # Wall presets input comboWallPresets = QtGui.QComboBox() - comboWallPresets.addItem(translate("Arch","Wall Presets...")) + comboWallPresets.addItem(translate("Arch","Wall Presets")) comboWallPresets.setToolTip(translate("Arch","This list shows all the MultiMaterials objects of this document. Create some to define wall types.")) self.multimats = [] self.MultiMat = None diff --git a/src/Mod/BIM/bimcommands/BimWelcome.py b/src/Mod/BIM/bimcommands/BimWelcome.py index e95f403863..6055e49582 100644 --- a/src/Mod/BIM/bimcommands/BimWelcome.py +++ b/src/Mod/BIM/bimcommands/BimWelcome.py @@ -36,9 +36,9 @@ class BIM_Welcome: def GetResources(self): return { "Pixmap": "BIM_Welcome.svg", - "MenuText": QT_TRANSLATE_NOOP("BIM_Welcome", "BIM Welcome screen"), + "MenuText": QT_TRANSLATE_NOOP("BIM_Welcome", "BIM Welcome Screen"), "ToolTip": QT_TRANSLATE_NOOP( - "BIM_Welcome", "Show the BIM workbench welcome screen" + "BIM_Welcome", "Shows the BIM workbench welcome screen" ), } diff --git a/src/Mod/BIM/bimcommands/BimWindows.py b/src/Mod/BIM/bimcommands/BimWindows.py index 79f7832364..4fb31b6014 100644 --- a/src/Mod/BIM/bimcommands/BimWindows.py +++ b/src/Mod/BIM/bimcommands/BimWindows.py @@ -35,10 +35,10 @@ class BIM_Windows: def GetResources(self): return { "Pixmap": "BIM_Windows", - "MenuText": QT_TRANSLATE_NOOP("BIM_Windows", "Manage doors and windows..."), + "MenuText": QT_TRANSLATE_NOOP("BIM_Windows", "Manage Doors and Windows"), "ToolTip": QT_TRANSLATE_NOOP( "BIM_Windows", - "Manage the different doors and windows of your BIM project", + "Manages the different doors and windows of the BIM project", ), } diff --git a/src/Mod/BIM/importers/importIFClegacy.py b/src/Mod/BIM/importers/importIFClegacy.py index 97f8e2c30c..8731faaaaf 100644 --- a/src/Mod/BIM/importers/importIFClegacy.py +++ b/src/Mod/BIM/importers/importIFClegacy.py @@ -121,7 +121,7 @@ def getIfcOpenShell(): try: import ifc_wrapper as IfcImport except ImportError: - FreeCAD.Console.PrintMessage(translate("Arch","Couldn't locate IfcOpenShell")+"\n") + FreeCAD.Console.PrintMessage(translate("Arch","Could not locate IfcOpenShell")+"\n") return False else: IFCOPENSHELL5 = True @@ -730,7 +730,7 @@ def getShape(obj,objid): except Exception: if DEBUG: print(" failed to retrieve solid from object ",objid) else: - if DEBUG: print(" object ", objid, " doesn't contain any geometry") + if DEBUG: print(" object ", objid, " does not contain any geometry") if not IFCOPENSHELL5: m = obj.matrix mat = FreeCAD.Matrix(m[0], m[3], m[6], m[9], @@ -947,7 +947,7 @@ def export(exportList,filename): if (not hasattr(ifcw,"IfcFile")) and (not hasattr(ifcw,"file")): FreeCAD.Console.PrintError(translate("Arch","Error: your IfcOpenShell version is too old")+"\n") - print("""importIFC: The version of IfcOpenShell installed on this system doesn't + print("""importIFC: The version of IfcOpenShell installed on this system does not have IFC export capabilities. IFC export currently requires an experimental version of IfcOpenShell available from https://github.com/aothms/IfcOpenShell""") return diff --git a/src/Mod/BIM/importers/importSH3DHelper.py b/src/Mod/BIM/importers/importSH3DHelper.py index b01e6f2c36..757a2ebbe7 100644 --- a/src/Mod/BIM/importers/importSH3DHelper.py +++ b/src/Mod/BIM/importers/importSH3DHelper.py @@ -256,7 +256,7 @@ class SH3DImporter: self._setup_handlers() if self.progress_bar: - self.progress_bar.start(f"Importing SweetHome 3D Home. Please wait ...", -1) + self.progress_bar.start(f"Importing SweetHome 3D Home. Standby…", -1) self._import_home(ET.fromstring(home)) def import_sh3d_from_filename(self, filename:str): @@ -276,7 +276,7 @@ class SH3DImporter: self._setup_handlers() if self.progress_bar: - self.progress_bar.start(f"Importing SweetHome 3D file '{self.filename}'. Please wait ...", -1) + self.progress_bar.start(f"Importing SweetHome 3D file '{self.filename}'. Standby…", -1) with zipfile.ZipFile(self.filename, 'r') as zip: self.zip = zip entries = zip.namelist() @@ -287,7 +287,7 @@ class SH3DImporter: def _import_home(self, home): doc = App.ActiveDocument self.total_object_count = self._get_object_count(home) - _msg(f"Importing home '{home.get('name')}' ...") + _msg(f"Importing home '{home.get('name')}'…") # Create the groups to organize the different resources together self._create_groups() @@ -306,7 +306,7 @@ class SH3DImporter: else: # Has the default floor already been created from a # previous import? - if self.preferences["DEBUG_GEOMETRY"]: _log("No level defined. Using default level ...") + if self.preferences["DEBUG_GEOMETRY"]: _log("No level defined. Using default level…") self.default_floor = self.fc_objects.get('Level') if 'Level' in self.fc_objects else self._create_default_floor() # Importing elements ... @@ -360,7 +360,7 @@ class SH3DImporter: Gui.runCommand('Render_View', 0) self._refresh() - _msg(f"Successfully imported home '{home.get('name')}' ...") + _msg(f"Successfully imported home '{home.get('name')}' …") def _get_object_count(self, home): """Get an approximate count of object to be imported @@ -595,10 +595,10 @@ class SH3DImporter: """ doc = App.ActiveDocument if self.preferences["IMPORT_CAMERAS"] and not doc.getObject("Cameras"): - _log(f"Creating Cameras group ...") + _log(f"Creating Cameras group…") doc.addObject("App::DocumentObjectGroup", "Cameras") if self.preferences["DEBUG_GEOMETRY"] and not doc.getObject("DEBUG_GEOMETRY"): - _log(f"Creating DEBUG_GEOMETRY group ...") + _log(f"Creating DEBUG_GEOMETRY group…") doc.addObject("App::DocumentObjectGroup", "DEBUG_GEOMETRY") def _setup_project(self, elm): @@ -722,12 +722,12 @@ class SH3DImporter: total_elements = len(elements) if self.progress_bar: self.progress_bar.stop() - self.progress_bar.start(f"Step {current_step}/{total_steps}: importing {total_elements} '{tag_name}' elements. Please wait ...", total_elements) - _msg(f"Importing {total_elements} '{tag_name}' elements ...") + self.progress_bar.start(f"Step {current_step}/{total_steps}: importing {total_elements} '{tag_name}' elements. Standby…", total_elements) + _msg(f"Importing {total_elements} '{tag_name}' elements…") handler = self.handlers[xpath] def _process(tuple): (i, elm) = tuple - _msg(f"Importing {tag_name}#{i} ({self.current_object_count + 1}/{self.total_object_count}) ...") + _msg(f"Importing {tag_name}#{i} ({self.current_object_count + 1}/{self.total_object_count})…") try: # with Transaction(f"Importing {tag_name}#{i}"): handler.process(parent, i, elm) @@ -821,13 +821,13 @@ class SH3DImporter: total_elements = len(floors) if self.progress_bar: self.progress_bar.stop() - self.progress_bar.start(f"Step {current_step}/{total_steps}: Creating {total_elements} 'slab' elements. Please wait ...", len(all_walls) + len(all_spaces)) + self.progress_bar.start(f"Step {current_step}/{total_steps}: Creating {total_elements} 'slab' elements. Standby…", len(all_walls) + len(all_spaces)) - _msg(f"Creating {total_elements} 'slab' elements ...") + _msg(f"Creating {total_elements} 'slab' elements…") handler = self.handlers[ET_XPATH_LEVEL] def _create_slab(tuple): (i, floor) = tuple - _msg(f"Creating slab#{i} for floor '{floor.Label}' ...") + _msg(f"Creating slab#{i} for floor '{floor.Label}'…") try: # with Transaction(f"Creating slab#{i} for floor '{floor.Label}'"): handler.create_slabs(floor, self.progress_bar) @@ -846,8 +846,8 @@ class SH3DImporter: if self.progress_bar: self.progress_bar.stop() - self.progress_bar.start(f"Decorating {total_elements} elements. Please wait ...", total_elements) - _msg(f"Decorating {total_elements} elements ...") + self.progress_bar.start(f"Decorating {total_elements} elements. Standby…", total_elements) + _msg(f"Decorating {total_elements} elements…") handler = self.handlers[ET_XPATH_ROOM] for i, space in enumerate(all_spaces): @@ -932,7 +932,7 @@ class BaseHandler: def get_wall_spine(self, wall): if not hasattr(wall, 'BaseObjects'): - _err(f"Wall {wall.Label} has no BaseObjects to get the Spine from...") + _err(f"Wall {wall.Label} has no BaseObjects to get the Spine from…") return wall.BaseObjects[2] def get_faces(self, wall): @@ -1180,7 +1180,7 @@ class LevelHandler(BaseHandler): Part.Feature: the extrusion used to later to fuse. """ if self.importer.preferences["DEBUG_GEOMETRY"]: - _log(f"Extruding {obj_to_extrude.Label} ...") + _log(f"Extruding {obj_to_extrude.Label}…") obj_to_extrude.recompute(True) projection = TechDraw.project(obj_to_extrude.Shape, Z_NORM)[0] face = Part.Face(Part.Wire(projection.Edges)) @@ -1258,7 +1258,7 @@ class RoomHandler(BaseHandler): level_id = elm.get('level', None) floor = self.get_floor(level_id) - assert floor != None, f"Missing floor '{level_id}' for '{elm.get('id')}' ..." + assert floor != None, f"Missing floor '{level_id}' for '{elm.get('id')}'…" space = face = None if self.importer.preferences["MERGE"]: @@ -1453,7 +1453,7 @@ class WallHandler(BaseHandler): """ level_id = elm.get('level', None) floor = self.get_floor(level_id) - assert floor != None, f"Missing floor '{level_id}' for '{elm.get('id')}' ..." + assert floor != None, f"Missing floor '{level_id}' for '{elm.get('id')}'…" wall = base_object = None if self.importer.preferences["MERGE"]: @@ -1576,7 +1576,7 @@ class WallHandler(BaseHandler): # ticket if sweep.Shape.isNull() or not sweep.Shape.isValid(): if is_wall_straight: - _log(f"Sweep's shape is invalid, using ruled surface instead ...") + _log(f"Sweep's shape is invalid, using ruled surface instead…") App.ActiveDocument.removeObject(sweep.Label) compound_solid, base_object = self._make_compound(section_start, section_end, spine) wall = Arch.makeWall(compound_solid) @@ -2197,7 +2197,7 @@ class DoorOrWindowHandler(BaseFurnitureHandler): door_id = f"{elm.get('id', elm.get('name'))}-{i}" level_id = elm.get('level', None) floor = self.get_floor(level_id) - assert floor != None, f"Missing floor '{level_id}' for '{door_id}' ..." + assert floor != None, f"Missing floor '{level_id}' for '{door_id}'…" feature = None @@ -2289,7 +2289,7 @@ class DoorOrWindowHandler(BaseFurnitureHandler): main_wall = extra_walls.pop(0) wall_width = main_wall.Width.Value if len(extra_walls) > 0: - _wrn(f"No main hosting wall for doorOrWindow#{elm.get('id')}. Defaulting to first hosting wall#{main_wall.Label} (w/ width {wall_width}) ...") + _wrn(f"No main hosting wall for doorOrWindow#{elm.get('id')}. Defaulting to first hosting wall#{main_wall.Label} (w/ width {wall_width})…") # Get the left and right face for the main_wall (_, wall_lface, _, wall_rface) = self.get_faces(main_wall) @@ -2304,7 +2304,7 @@ class DoorOrWindowHandler(BaseFurnitureHandler): # Determine the bounding box face bb_face, bb_face_normal = self._get_bb_face(dow_bounding_box, angle, label_prefix) if not bb_face: - _err(f"Weird: None of BoundingBox's faces for doorOrWindow#{elm.get('id')} has the expected angle ({angle}º). Can't create window.") + _err(f"Weird: None of BoundingBox's faces for doorOrWindow#{elm.get('id')} has the expected angle ({angle}º). Cannot create the window.") if debug_geometry: self._debug_shape(dow_bounding_box, f"{label_prefix}-missing-bb-face#{main_wall.Label}", RED) return None elif debug_geometry: @@ -2326,7 +2326,7 @@ class DoorOrWindowHandler(BaseFurnitureHandler): is_on_right = False wall_face = wall_lface if not self._same_dir(bb_face_normal, wall_lface_normal, 1): - _err(f"Weird: the extracted bb_normal {self._pv(bb_face_normal, True)} does not match neither the right face normal ({self._pv(wall_rface_normal, True)}) nor the left face normal ({self._pv(wall_lface_normal, True)}) of the wall {main_wall.Label}... The doorOrWindow might be slightly skewed. Defaulting to left face.") + _err(f"Weird: the extracted bb_normal {self._pv(bb_face_normal, True)} does not match neither the right face normal ({self._pv(wall_rface_normal, True)}) nor the left face normal ({self._pv(wall_lface_normal, True)}) of the wall {main_wall.Label}… The doorOrWindow might be slightly skewed. Defaulting to left face.") # Project the bounding_box face onto the wall projected_face = wall_face.makeParallelProjection(bb_face.OuterWire, bb_face_normal) @@ -2518,7 +2518,7 @@ class FurnitureHandler(BaseFurnitureHandler): furniture_id = self._get_furniture_id(i, elm) level_id = elm.get('level', None) floor = self.get_floor(level_id) - assert floor != None, f"Missing floor '{level_id}' for '{furniture_id}' ..." + assert floor != None, f"Missing floor '{level_id}' for '{furniture_id}'…" furniture = None if self.importer.preferences["MERGE"]: @@ -2719,12 +2719,12 @@ class LightHandler(FurnitureHandler): light_id = super()._get_furniture_id(i, elm) level_id = elm.get('level', None) floor = self.get_floor(level_id) - assert floor != None, f"Missing floor '{level_id}' for '{light_id}' ..." + assert floor != None, f"Missing floor '{level_id}' for '{light_id}'…" if self.importer.preferences["IMPORT_FURNITURES"]: super().process(parent, i, elm) light_apppliance = self.get_fc_object(light_id, 'pieceOfFurniture') - assert light_apppliance != None, f"Missing furniture {light_id} ..." + assert light_apppliance != None, f"Missing furniture {light_id}…" self.setp(light_apppliance, "App::PropertyFloat", "power", "The power of the light. In percent???", float(elm.get('power', 0.5))) if self.importer.preferences["IMPORT_LIGHTS"]: diff --git a/src/Mod/BIM/nativeifc/ifc_commands.py b/src/Mod/BIM/nativeifc/ifc_commands.py index d626e5e281..3fa27aa01f 100644 --- a/src/Mod/BIM/nativeifc/ifc_commands.py +++ b/src/Mod/BIM/nativeifc/ifc_commands.py @@ -53,7 +53,7 @@ class IFC_Diff: ) return { "Pixmap": "IFC", - "MenuText": QT_TRANSLATE_NOOP("IFC_Diff", "IFC Diff..."), + "MenuText": QT_TRANSLATE_NOOP("IFC_Diff", "IFC Diff"), "ToolTip": tt, "Accel": "I, D", } @@ -116,7 +116,7 @@ class IFC_ConvertDocument: ) return { "Pixmap": "IFC", - "MenuText": QT_TRANSLATE_NOOP("IFC_ConvertDocument", "Convert document"), + "MenuText": QT_TRANSLATE_NOOP("IFC_ConvertDocument", "Convert Document"), "ToolTip": tt, # "Accel": "I, C", } @@ -146,7 +146,7 @@ class IFC_MakeProject: ) return { "Pixmap": "IFC", - "MenuText": QT_TRANSLATE_NOOP("IFC_MakeProject", "Make IFC project"), + "MenuText": QT_TRANSLATE_NOOP("IFC_MakeProject", "Create IFC Project"), "ToolTip": tt, "Accel": "I, P", } @@ -186,7 +186,7 @@ class IFC_Save: ) return { "Pixmap": "IFC_document", - "MenuText": QT_TRANSLATE_NOOP("IFC_Save", "Save IFC file"), + "MenuText": QT_TRANSLATE_NOOP("IFC_Save", "Save IFC File"), "ToolTip": tt, "Accel": "Ctrl+S", } @@ -221,7 +221,7 @@ class IFC_SaveAs: ) return { "Pixmap": "IFC_document", - "MenuText": QT_TRANSLATE_NOOP("IFC_SaveAs", "Save IFC file as..."), + "MenuText": QT_TRANSLATE_NOOP("IFC_SaveAs", "Save IFC File As…"), "ToolTip": tt, "Accel": "Ctrl+Shift+S", } diff --git a/src/Mod/BIM/nativeifc/ifc_diff.py b/src/Mod/BIM/nativeifc/ifc_diff.py index 3273e9f8e1..a9cf4bcace 100644 --- a/src/Mod/BIM/nativeifc/ifc_diff.py +++ b/src/Mod/BIM/nativeifc/ifc_diff.py @@ -66,7 +66,7 @@ def htmlize(diff): html = "\n" if diff == 1: - html += translate("BIM", "The IFC file is not saved. Please save once" + html += translate("BIM", "The IFC file is not saved. Save once" " to have an existing IFC file to compare with." " Then, run this command again.") + "
\n" elif diff: diff --git a/src/Mod/BIM/nativeifc/ifc_openshell.py b/src/Mod/BIM/nativeifc/ifc_openshell.py index c8a7fa95ab..a994c3b3f7 100644 --- a/src/Mod/BIM/nativeifc/ifc_openshell.py +++ b/src/Mod/BIM/nativeifc/ifc_openshell.py @@ -41,7 +41,7 @@ class IFC_UpdateIOS: tt = QT_TRANSLATE_NOOP("IFC_UpdateIOS", "Shows a dialog to update IfcOpenShell") return { "Pixmap": "IFC", - "MenuText": QT_TRANSLATE_NOOP("IFC_UpdateIOS", "IfcOpenShell update"), + "MenuText": QT_TRANSLATE_NOOP("IFC_UpdateIOS", "IfcOpenShell Update"), "ToolTip": tt, } @@ -70,7 +70,7 @@ class IFC_UpdateIOS: from PySide import QtGui title = translate("BIM", "IfcOpenShell update") - note = translate("BIM", "The update is installed in your FreeCAD's user directory and won't affect the rest of your system.") + note = translate("BIM", "The update is installed in your FreeCAD's user directory and will not affect the rest of your system.") if mode == "update": text = translate("BIM", "An update to your installed IfcOpenShell version is available") text += ": " + version + ". " @@ -127,7 +127,7 @@ class IFC_UpdateIOS: except CalledProcessError as pe: FreeCAD.Console.PrintError(pe.stderr) except Exception as e: - text = translate("BIM","Unable to run pip. Please ensure pip is installed on your system.") + text = translate("BIM","Unable to run pip. Ensure pip is installed on your system.") FreeCAD.Console.PrintError(f"{text} {str(e)}\n") return result diff --git a/src/Mod/BIM/utils/buildPsets.py b/src/Mod/BIM/utils/buildPsets.py index ee8d489155..33a3a1c2b7 100644 --- a/src/Mod/BIM/utils/buildPsets.py +++ b/src/Mod/BIM/utils/buildPsets.py @@ -104,14 +104,14 @@ class PropertyDefHandler(xml.sax.ContentHandler): # MAIN -print("Getting psets xml definitions...") +print("Getting psets xml definitions…") with open("psd.zip","wb") as f: u = urlopen(URL) p = u.read() f.write(p) -print("Reading xml definitions...") +print("Reading xml definitions…") psets = [] qtos = [] @@ -127,7 +127,7 @@ with ZipFile("psd.zip", 'r') as z: else: qtos.append(handler.line) -print("Saving files...") +print("Saving files…") with open("../Presets/pset_definitions.csv", "w") as f: for l in psets: