Fix source string mistakes reported on Crowdin (#23157)
* Fix source string mistakes reported on Crowdin * Update src/Mod/Draft/Resources/ui/TaskPanel_CircularArray.ui Co-authored-by: Roy-043 <[email protected]> * Update src/Mod/Draft/Resources/ui/TaskPanel_CircularArray.ui Co-authored-by: Roy-043 <[email protected]> * Update src/Mod/Draft/draftfunctions/upgrade.py Co-authored-by: Roy-043 <[email protected]> * Update src/Mod/Draft/draftfunctions/upgrade.py Co-authored-by: Roy-043 <[email protected]> * Update src/Mod/Draft/draftguitools/gui_downgrade.py Co-authored-by: Roy-043 <[email protected]> * Update src/Mod/Draft/Resources/ui/TaskPanel_SetStyle.ui Co-authored-by: Roy-043 <[email protected]> --------- Co-authored-by: Roy-043 <[email protected]>
This commit is contained in:
+5
-4
@@ -1145,10 +1145,11 @@ void RecentMacrosAction::setFiles(const QStringList& files)
|
||||
for (int index = 0; index < existingCommands.count(); index++) {
|
||||
msgMain += QStringLiteral(" %1").arg(existingCommands[index]);
|
||||
}
|
||||
msgMain += QStringLiteral(" respectively.\nHint: In Preferences -> Python -> Macro ->"
|
||||
" Recent Macros menu -> Keyboard Modifiers this should be Ctrl+Shift+"
|
||||
" by default, if this is now blank then you should revert it back to"
|
||||
" Ctrl+Shift+ by pressing both keys at the same time.");
|
||||
msgMain +=
|
||||
QStringLiteral(" respectively.\nHint: In Preferences → Python → Macro →"
|
||||
" Recent Macros menu → Keyboard Modifiers this should be Ctrl+Shift+"
|
||||
" by default, if this is now blank then you should revert it back to"
|
||||
" Ctrl+Shift+ by pressing both keys at the same time.");
|
||||
Base::Console().warning("%s\n", qPrintable(msgMain));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -292,7 +292,7 @@ protected:
|
||||
std::make_pair(QT_TRANSLATE_NOOP("EditMode", "&Color"),
|
||||
QT_TRANSLATE_NOOP("EditMode",
|
||||
"The object will have the color of its individual faces "
|
||||
"editable with the Part FaceAppearances command"))},
|
||||
"editable with the Appearance per Face command"))},
|
||||
};
|
||||
int userEditMode = userEditModes.begin()->first;
|
||||
|
||||
|
||||
@@ -211,7 +211,7 @@ void DlgCustomActionsImp::onActionListWidgetItemActivated(QTreeWidgetItem* item)
|
||||
if (!bFound) {
|
||||
QMessageBox::critical(this,
|
||||
tr("Macro not found"),
|
||||
tr("Could not find macro file '%1'.").arg(scriptName));
|
||||
tr("Could not find macro file '%1'").arg(scriptName));
|
||||
}
|
||||
|
||||
// fill up labels with the command's data
|
||||
@@ -235,12 +235,12 @@ void DlgCustomActionsImp::onActionListWidgetItemActivated(QTreeWidgetItem* item)
|
||||
void DlgCustomActionsImp::onButtonAddActionClicked()
|
||||
{
|
||||
if (ui->actionMacros->currentText().isEmpty()) {
|
||||
QMessageBox::warning(this, tr("Empty macro"), tr("First, specify the macro."));
|
||||
QMessageBox::warning(this, tr("Empty macro"), tr("Specify the macro first"));
|
||||
return;
|
||||
}
|
||||
|
||||
if (ui->actionMenu->text().isEmpty()) {
|
||||
QMessageBox::warning(this, tr("Empty text"), tr("Fisrst, specify the menu text."));
|
||||
QMessageBox::warning(this, tr("Empty text"), tr("Specify the menu text first"));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -305,12 +305,12 @@ void DlgCustomActionsImp::onButtonReplaceActionClicked()
|
||||
{
|
||||
QTreeWidgetItem* item = ui->actionListWidget->currentItem();
|
||||
if (!item) {
|
||||
QMessageBox::warning(this, tr("No item selected"), tr("First, select a macro item."));
|
||||
QMessageBox::warning(this, tr("No item selected"), tr("Select a macro item first"));
|
||||
return;
|
||||
}
|
||||
|
||||
if (ui->actionMenu->text().isEmpty()) {
|
||||
QMessageBox::warning(this, tr("Empty text"), tr("First, specify the menu text."));
|
||||
QMessageBox::warning(this, tr("Empty text"), tr("Specify the menu text first"));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -622,7 +622,7 @@ void IconFolders::removeFolder()
|
||||
QMessageBox::information(
|
||||
this,
|
||||
tr("Remove folder"),
|
||||
tr("Removing a folder only takes effect after an application restart."));
|
||||
tr("Removing a folder only takes effect after an application restart"));
|
||||
}
|
||||
|
||||
addButton->setEnabled(true);
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
<item>
|
||||
<widget class="QLineEdit" name="LineEditFindInFiles">
|
||||
<property name="toolTip">
|
||||
<string>Filter by case-insensitive file content, regular expressions supported</string>
|
||||
<string>Filter by file content, case-insensitive. Regular expressions are supported.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -178,50 +178,50 @@ Translator::Translator()
|
||||
// This is needed for Qt's lupdate
|
||||
// clang-format off
|
||||
d = new TranslatorP;
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Afrikaans" )] = "af";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Arabic" )] = "ar";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Basque" )] = "eu";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Belarusian" )] = "be";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Bulgarian" )] = "bg";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Catalan" )] = "ca";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Chinese Simplified" )] = "zh-CN";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Chinese Traditional" )] = "zh-TW";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Croatian" )] = "hr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Czech" )] = "cs";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Danish" )] = "da";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Dutch" )] = "nl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("English" )] = "en";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Filipino" )] = "fil";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Finnish" )] = "fi";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("French" )] = "fr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Galician" )] = "gl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Georgian" )] = "ka";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("German" )] = "de";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Greek" )] = "el";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Hungarian" )] = "hu";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Indonesian" )] = "id";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Italian" )] = "it";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Japanese" )] = "ja";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Kabyle" )] = "kab";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Korean" )] = "ko";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Lithuanian" )] = "lt";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Norwegian" )] = "no";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Polish" )] = "pl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Portuguese, Brazilian")] = "pt-BR";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Portuguese" )] = "pt-PT";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Romanian" )] = "ro";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Russian" )] = "ru";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Serbian" )] = "sr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Serbian, Latin" )] = "sr-CS";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Slovak" )] = "sk";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Slovenian" )] = "sl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Spanish" )] = "es-ES";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Spanish, Argentina" )] = "es-AR";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Swedish" )] = "sv-SE";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Turkish" )] = "tr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Ukrainian" )] = "uk";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Valencian" )] = "val-ES";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Vietnamese" )] = "vi";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Afrikaans" )] = "af";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Arabic" )] = "ar";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Basque" )] = "eu";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Belarusian" )] = "be";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Bulgarian" )] = "bg";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Catalan" )] = "ca";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Chinese (Simplified)" )] = "zh-CN";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Chinese (Traditional)" )] = "zh-TW";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Croatian" )] = "hr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Czech" )] = "cs";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Danish" )] = "da";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Dutch" )] = "nl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("English" )] = "en";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Filipino" )] = "fil";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Finnish" )] = "fi";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("French" )] = "fr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Galician" )] = "gl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Georgian" )] = "ka";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("German" )] = "de";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Greek" )] = "el";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Hungarian" )] = "hu";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Indonesian" )] = "id";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Italian" )] = "it";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Japanese" )] = "ja";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Kabyle" )] = "kab";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Korean" )] = "ko";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Lithuanian" )] = "lt";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Norwegian" )] = "no";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Polish" )] = "pl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Portuguese (Brazilian)")] = "pt-BR";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Portuguese" )] = "pt-PT";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Romanian" )] = "ro";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Russian" )] = "ru";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Serbian" )] = "sr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Serbian (Latin)" )] = "sr-CS";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Slovak" )] = "sk";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Slovenian" )] = "sl";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Spanish" )] = "es-ES";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Spanish (Argentina)" )] = "es-AR";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Swedish" )] = "sv-SE";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Turkish" )] = "tr";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Ukrainian" )] = "uk";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Valencian" )] = "val-ES";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Vietnamese" )] = "vi";
|
||||
d->mapLanguageTopLevelDomain[QT_TR_NOOP("Malay")] = "ms";
|
||||
|
||||
auto hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/General");
|
||||
|
||||
@@ -54,7 +54,7 @@ const char* CADNavigationStyle::mouseButtons(ViewerMode mode)
|
||||
case NavigationStyle::DRAGGING:
|
||||
return QT_TR_NOOP("Press middle+left or middle+right mouse button");
|
||||
case NavigationStyle::ZOOMING:
|
||||
return QT_TR_NOOP("Scroll middle mouse button or keep middle button depressed\n"
|
||||
return QT_TR_NOOP("Scroll mouse wheel or keep middle button depressed\n"
|
||||
"while doing a left or right click and move the mouse up or down");
|
||||
default:
|
||||
return "No description";
|
||||
|
||||
@@ -860,7 +860,7 @@ const char* GestureNavigationStyle::mouseButtons(ViewerMode mode)
|
||||
case NavigationStyle::DRAGGING:
|
||||
return QT_TR_NOOP("Drag screen with one finger OR press left mouse button. In Sketcher and other edit modes, hold Alt in addition.");
|
||||
case NavigationStyle::ZOOMING:
|
||||
return QT_TR_NOOP("Pinch (place two fingers on the screen and drag them apart from or towards each other) OR scroll middle mouse button OR PgUp/PgDown on keyboard.");
|
||||
return QT_TR_NOOP("Pinch (place two fingers on the screen and drag them apart from or towards each other) OR scroll mouse wheel OR PgUp/PgDown on keyboard.");
|
||||
default:
|
||||
return "No description";
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ const char* InventorNavigationStyle::mouseButtons(ViewerMode mode)
|
||||
case NavigationStyle::DRAGGING:
|
||||
return QT_TR_NOOP("Press left mouse button");
|
||||
case NavigationStyle::ZOOMING:
|
||||
return QT_TR_NOOP("Scroll middle mouse button");
|
||||
return QT_TR_NOOP("Scroll mouse wheel");
|
||||
default:
|
||||
return "No description";
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ const char* MayaGestureNavigationStyle::mouseButtons(ViewerMode mode)
|
||||
case NavigationStyle::DRAGGING:
|
||||
return QT_TR_NOOP("Drag screen with one finger OR press Alr + left mouse button. In Sketcher and other edit modes, hold Alt in addition.");
|
||||
case NavigationStyle::ZOOMING:
|
||||
return QT_TR_NOOP("Pinch (place two fingers on the screen and drag them apart from or towards each other) OR scroll middle mouse button OR press Alt + right mouse button OR PgUp/PgDown on keyboard.");
|
||||
return QT_TR_NOOP("Pinch (place two fingers on the screen and drag them apart from or towards each other) OR scroll mouse wheel OR press Alt + right mouse button OR PgUp/PgDown on keyboard.");
|
||||
default:
|
||||
return "No description";
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ const char* TinkerCADNavigationStyle::mouseButtons(ViewerMode mode)
|
||||
case NavigationStyle::DRAGGING:
|
||||
return QT_TR_NOOP("Press right mouse button");
|
||||
case NavigationStyle::ZOOMING:
|
||||
return QT_TR_NOOP("Scroll middle mouse button");
|
||||
return QT_TR_NOOP("Scroll mouse wheel");
|
||||
default:
|
||||
return "No description";
|
||||
}
|
||||
|
||||
@@ -315,7 +315,7 @@ void OverlayParams::removeDockOverlayAutoView() {
|
||||
// Auto generated code (Tools/params_utils.py:350)
|
||||
const char *OverlayParams::docDockOverlayDelay() {
|
||||
return QT_TRANSLATE_NOOP("OverlayParams",
|
||||
"Overlay dock (re),layout delay.");
|
||||
"Overlay layout delay");
|
||||
}
|
||||
|
||||
// Auto generated code (Tools/params_utils.py:358)
|
||||
@@ -454,8 +454,9 @@ void OverlayParams::removeDockOverlayAutoMouseThrough() {
|
||||
|
||||
// Auto generated code (Tools/params_utils.py:350)
|
||||
const char *OverlayParams::docDockOverlayWheelPassThrough() {
|
||||
return QT_TRANSLATE_NOOP("OverlayParams",
|
||||
"Auto pass through mouse wheel event on transparent dock overlay.");
|
||||
return QT_TRANSLATE_NOOP(
|
||||
"OverlayParams",
|
||||
"Automatically passes mouse wheel events through the transparent areas of an overlay panel");
|
||||
}
|
||||
|
||||
// Auto generated code (Tools/params_utils.py:358)
|
||||
|
||||
@@ -99,7 +99,7 @@ class ParamAnimationCurve(ParamProxy):
|
||||
|
||||
Params = [
|
||||
ParamBool('DockOverlayAutoView', True, on_change=True, title="Auto hide in non 3D view"),
|
||||
ParamInt('DockOverlayDelay', 200, "Overlay dock (re),layout delay.", title="Layout delay", proxy=ParamSpinBox(0, 5000, 100, suffix=" ms")),
|
||||
ParamInt('DockOverlayDelay', 200, "Overlay layout delay", title="Layout delay", proxy=ParamSpinBox(0, 5000, 100, suffix=" ms")),
|
||||
ParamInt('DockOverlayRevealDelay', 2000),
|
||||
ParamInt('DockOverlaySplitterHandleTimeout', 0, title="Splitter auto hide delay", proxy=ParamSpinBox(0, 99999, 100, suffix=" ms"),
|
||||
doc="Overlay splitter handle auto hide delay. Set zero to disable auto hiding."),
|
||||
@@ -109,7 +109,7 @@ Params = [
|
||||
ParamBool('DockOverlayAutoMouseThrough', True,
|
||||
"Auto mouse click through transparent part of dock overlay.", title="Auto mouse pass through"),
|
||||
ParamBool('DockOverlayWheelPassThrough', True,
|
||||
"Auto pass through mouse wheel event on transparent dock overlay.", title="Auto mouse wheel pass through"),
|
||||
"Automatically passes mouse wheel events through the transparent areas of an overlay panel", title="Auto mouse wheel pass through"),
|
||||
ParamInt('DockOverlayWheelDelay', 1000, title="Delay mouse wheel pass through", proxy=ParamSpinBox(0, 99999, 1, suffix=" ms"),
|
||||
doc="Delay capturing mouse wheel event for passing through if it is\n"
|
||||
"previously handled by other widget."),
|
||||
|
||||
@@ -717,7 +717,7 @@ Zoom step of '1' means a factor of 7.5 for every zoom step.</string>
|
||||
<widget class="Gui::PrefCheckBox" name="checkBoxDisableTilt">
|
||||
<property name="toolTip">
|
||||
<string>Prevents view tilting when pinch-zooming.
|
||||
Affects only gesture navigation style.
|
||||
Affects only Gesture navigation style.
|
||||
Mouse tilting is not disabled by this setting.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
@@ -746,7 +746,7 @@ Mouse tilting is not disabled by this setting.</string>
|
||||
<item row="0" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="legacySpaceMouseDevices">
|
||||
<property name="text">
|
||||
<string>Enable support of legacy space mouse devices</string>
|
||||
<string>Enable support of legacy SpaceMouse devices</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>LegacySpaceMouseDevices</cstring>
|
||||
|
||||
@@ -477,7 +477,7 @@
|
||||
<item row="5" column="0">
|
||||
<widget class="Gui::PrefCheckBox" name="mouseWheelPassThroughCheckBox">
|
||||
<property name="toolTip">
|
||||
<string>Auto pass through mouse wheel event on transparent dock overlay.</string>
|
||||
<string>Automatically passes mouse wheel events through the transparent areas of an overlay panel</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Automatically pass through of the mouse wheel</string>
|
||||
|
||||
@@ -773,7 +773,7 @@ void PropertyEditor::contextMenuEvent(QContextMenuEvent*)
|
||||
auto prop = *props.begin();
|
||||
if (prop->testStatus(App::Property::PropDynamic)
|
||||
&& !prop->testStatus(App::Property::LockDynamic)) {
|
||||
menu.addAction(tr("Rename property"))->setData(QVariant(MA_RenameProp));
|
||||
menu.addAction(tr("Rename Property"))->setData(QVariant(MA_RenameProp));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -790,7 +790,7 @@ void PropertyEditor::contextMenuEvent(QContextMenuEvent*)
|
||||
}
|
||||
}
|
||||
if (canRemove) {
|
||||
menu.addAction(tr("Remove Property"))->setData(QVariant(MA_RemoveProp));
|
||||
menu.addAction(tr("Delete Property"))->setData(QVariant(MA_RemoveProp));
|
||||
}
|
||||
|
||||
// add a separator between adding/removing properties and the rest
|
||||
|
||||
@@ -526,7 +526,7 @@ class MotionEditDialog:
|
||||
self.help_label0 = QLabel(
|
||||
translate(
|
||||
"Assembly",
|
||||
"In capital are variables that you need to replace with actual values. More details about each example in it's tooltip.",
|
||||
"In capital are variables that you need to replace with actual values. More details about each example in its tooltip.",
|
||||
),
|
||||
self.dialog,
|
||||
)
|
||||
|
||||
@@ -137,7 +137,7 @@ class TaskAssemblyNewPart(JointObject.TaskAssemblyCreateJoint):
|
||||
translate("Assembly", "Save"), QtWidgets.QMessageBox.AcceptRole
|
||||
)
|
||||
cancelButton = msgBox.addButton(
|
||||
translate("Assembly", "Do not link"), QtWidgets.QMessageBox.RejectRole
|
||||
translate("Assembly", "Do not Link"), QtWidgets.QMessageBox.RejectRole
|
||||
)
|
||||
|
||||
msgBox.exec_()
|
||||
|
||||
@@ -217,7 +217,7 @@ class Joint:
|
||||
"Joint Connector 1",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the local coordinate system within Reference1's object that will be used for the joint.",
|
||||
"This is the local coordinate system within Reference1's object that will be used for the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -229,7 +229,7 @@ class Joint:
|
||||
"Joint Connector 1",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This prevents Placement1 from recomputing, enabling custom positioning of the placement.",
|
||||
"This prevents Placement1 from recomputing, enabling custom positioning of the placement",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -241,7 +241,7 @@ class Joint:
|
||||
"Joint Connector 1",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the attachment offset of the first connector of the joint.",
|
||||
"This is the attachment offset of the first connector of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -263,7 +263,7 @@ class Joint:
|
||||
"Joint Connector 2",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the local coordinate system within Reference2's object that will be used for the joint.",
|
||||
"This is the local coordinate system within Reference2's object that will be used for the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -275,7 +275,7 @@ class Joint:
|
||||
"Joint Connector 2",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This prevents Placement2 from recomputing, enabling custom positioning of the placement.",
|
||||
"This prevents Placement2 from recomputing, enabling custom positioning of the placement",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -287,7 +287,7 @@ class Joint:
|
||||
"Joint Connector 2",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the attachment offset of the second connector of the joint.",
|
||||
"This is the attachment offset of the second connector of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -324,7 +324,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"Enable the minimum length limit of the joint.",
|
||||
"Enable the minimum length limit of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -337,7 +337,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"Enable the maximum length limit of the joint.",
|
||||
"Enable the maximum length limit of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -350,7 +350,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"Enable the minimum angle limit of the joint.",
|
||||
"Enable the minimum angle limit of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -363,7 +363,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"Enable the minimum length of the joint.",
|
||||
"Enable the maximum angle limit of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -376,7 +376,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the minimum limit for the length between both coordinate systems (along their Z axis).",
|
||||
"This is the minimum limit for the length between both coordinate systems (along their z-axis)",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -388,7 +388,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the maximum limit for the length between both coordinate systems (along their Z axis).",
|
||||
"This is the maximum limit for the length between both coordinate systems (along their z-axis)",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -400,7 +400,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the minimum limit for the angle between both coordinate systems (between their X axis).",
|
||||
"This is the minimum limit for the angle between both coordinate systems (between their x-axis)",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -412,7 +412,7 @@ class Joint:
|
||||
"Limits",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the maximum limit for the angle between both coordinate systems (between their X axis).",
|
||||
"This is the maximum limit for the angle between both coordinate systems (between their x-axis)",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -512,7 +512,7 @@ class Joint:
|
||||
"Joint Connector 1",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the attachment offset of the first connector of the joint.",
|
||||
"This is the attachment offset of the first connector of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -523,7 +523,7 @@ class Joint:
|
||||
"Joint Connector 2",
|
||||
QT_TRANSLATE_NOOP(
|
||||
"App::Property",
|
||||
"This is the attachment offset of the second connector of the joint.",
|
||||
"This is the attachment offset of the second connector of the joint",
|
||||
),
|
||||
locked=True,
|
||||
)
|
||||
@@ -565,7 +565,7 @@ class Joint:
|
||||
activated = joint.Activated
|
||||
if not activated:
|
||||
print(
|
||||
"The 'Activated' property has been replaced by the 'Suppressed' property. Your file has a deactivated joint that is being migrated. If you open back this file in an older version, it will not be deactivated anymore."
|
||||
"The 'Activated' property has been replaced by the 'Suppressed' property. The file has a deactivated joint that is being migrated. If you open this file in an older version, it will not be deactivated anymore."
|
||||
)
|
||||
joint.removeProperty("Activated")
|
||||
joint.Suppressed = not activated
|
||||
@@ -1390,7 +1390,7 @@ class TaskAssemblyCreateJoint(QtCore.QObject):
|
||||
def accept(self):
|
||||
if len(self.refs) != 2:
|
||||
App.Console.PrintWarning(
|
||||
translate("Assembly", "You need to select 2 elements from 2 separate parts.")
|
||||
translate("Assembly", "Select 2 elements from 2 separate parts")
|
||||
)
|
||||
return False
|
||||
|
||||
|
||||
@@ -1183,10 +1183,10 @@ class SurveyTaskPanel:
|
||||
|
||||
def retranslateUi(self,dlg):
|
||||
self.form.setWindowTitle(QtGui.QApplication.translate("Arch", "Survey", None))
|
||||
self.addButton.setText(QtGui.QApplication.translate("Arch", "Set description", None))
|
||||
self.addButton.setText(QtGui.QApplication.translate("Arch", "Set Description", None))
|
||||
self.clearButton.setText(QtGui.QApplication.translate("Arch", "Clear", None))
|
||||
self.copyLength.setText(QtGui.QApplication.translate("Arch", "Copy Length", None))
|
||||
self.copyArea.setText(QtGui.QApplication.translate("Arch", "Copy Area", None))
|
||||
self.copyLength.setText(QtGui.QApplication.translate("Arch", "Copy Total Length", None))
|
||||
self.copyArea.setText(QtGui.QApplication.translate("Arch", "Copy Total Area", None))
|
||||
self.export.setText(QtGui.QApplication.translate("Arch", "Export CSV", None))
|
||||
self.tree.setHeaderLabels([QtGui.QApplication.translate("Arch", "Description", None),
|
||||
QtGui.QApplication.translate("Arch", "Length", None),
|
||||
|
||||
@@ -391,12 +391,12 @@ class ArchGridTaskPanel:
|
||||
self.form.setWindowTitle(QtGui.QApplication.translate("Arch", "Grid", None))
|
||||
self.wLabel.setText(QtGui.QApplication.translate("Arch", "Total width", None))
|
||||
self.hLabel.setText(QtGui.QApplication.translate("Arch", "Total height", None))
|
||||
self.addRowButton.setText(QtGui.QApplication.translate("Arch", "Add row", None))
|
||||
self.delRowButton.setText(QtGui.QApplication.translate("Arch", "Del row", None))
|
||||
self.addColumnButton.setText(QtGui.QApplication.translate("Arch", "Add column", None))
|
||||
self.delColumnButton.setText(QtGui.QApplication.translate("Arch", "Del column", None))
|
||||
self.spanButton.setText(QtGui.QApplication.translate("Arch", "Create span", None))
|
||||
self.delSpanButton.setText(QtGui.QApplication.translate("Arch", "Remove span", None))
|
||||
self.addRowButton.setText(QtGui.QApplication.translate("Arch", "Add Row", None))
|
||||
self.delRowButton.setText(QtGui.QApplication.translate("Arch", "Delete Row", None))
|
||||
self.addColumnButton.setText(QtGui.QApplication.translate("Arch", "Add Column", None))
|
||||
self.delColumnButton.setText(QtGui.QApplication.translate("Arch", "Delete Column", None))
|
||||
self.spanButton.setText(QtGui.QApplication.translate("Arch", "Create Span", None))
|
||||
self.delSpanButton.setText(QtGui.QApplication.translate("Arch", "Remove Span", None))
|
||||
self.title.setText(QtGui.QApplication.translate("Arch", "Rows", None)+": "+str(self.table.rowCount())+" / "+QtGui.QApplication.translate("Arch", "Columns", None)+": "+str(self.table.columnCount()))
|
||||
|
||||
def update(self):
|
||||
|
||||
@@ -334,9 +334,9 @@ class _CommandStructure:
|
||||
self.dents = ArchPrecast._DentsTaskPanel()
|
||||
self.precast.Dents = self.dents
|
||||
if self.beammode:
|
||||
title=translate("Arch","First point of the beam")+":"
|
||||
title=translate("Arch","First point of the beam")
|
||||
else:
|
||||
title=translate("Arch","Base point of column")+":"
|
||||
title=translate("Arch","Base point of column")
|
||||
FreeCADGui.Snapper.getPoint(callback=self.getPoint,movecallback=self.update,extradlg=[self.taskbox(),self.precast.form,self.dents.form],title=title)
|
||||
FreeCADGui.draftToolBar.continueCmd.show()
|
||||
|
||||
|
||||
@@ -174,7 +174,7 @@ When dealing with native IFC objects, you can use FreeCAD properties name, ex: '
|
||||
<string>Deletes the selected line</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Del Row</string>
|
||||
<string>Delete Row</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset theme="remove">
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
<item>
|
||||
<widget class="QCheckBox" name="checkAskAgain">
|
||||
<property name="toolTip">
|
||||
<string>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.</string>
|
||||
<string>Prevents further prompts when creating new FreeCAD documents. New documents will not be converted to IFC automatically, but conversion remains possible later via Utils → Create IFC Project.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Do not ask again</string>
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonIFCPropertiesDelete">
|
||||
<property name="text">
|
||||
<string>Delete Selected Property/Set</string>
|
||||
<string>Delete Selected Property/Property Set</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset theme="gtk-delete">
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonDelete">
|
||||
<property name="text">
|
||||
<string>Delete selected property/set</string>
|
||||
<string>Delete Selected Property/Property Set</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset theme="gtk-delete">
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
<item row="3" column="1">
|
||||
<widget class="QComboBox" name="comboSingleDoc">
|
||||
<property name="toolTip">
|
||||
<string>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.</string>
|
||||
<string>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.</string>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
@@ -116,7 +116,7 @@
|
||||
<item>
|
||||
<widget class="QCheckBox" name="checkLoadTypes">
|
||||
<property name="toolTip">
|
||||
<string>Preload IFC types that are connected to the objects. It is also possible to leave this setting disabled and double click later on the object to load the types</string>
|
||||
<string>Preloads IFC types that are connected to the objects. It is also possible to leave this setting disabled and double click later on the object to load the types.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Preload types</string>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>This screen assists in creating and configuring a new BIM project in FreeCAD</string>
|
||||
<string>This dialog assists in creating and configuring a new BIM project in FreeCAD</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
|
||||
@@ -353,7 +353,7 @@
|
||||
<item row="2" column="3">
|
||||
<widget class="Gui::ColorButton" name="colorButtonFaces">
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>The default color of faces in the 3D view. Location in preferences: <span style=" font-weight:600;">Display &gt; Part Color &gt; Default shape color</span></p></body></html></string>
|
||||
<string><html><head/><body><p>The default color of faces in the 3D view. Location in preferences: <span style=" font-weight:600;">Display &gt; Part/Part Design Color &gt; Shape Appearance &gt; Shape color</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -381,7 +381,7 @@
|
||||
<item row="3" column="1">
|
||||
<widget class="Gui::ColorButton" name="colorButtonHelpers">
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>The default color for helper objects such as grids and axes. Location in preferences: <span style=" font-weight:600;">BIM &gt; Defaults &gt; Helpers</span></p></body></html></string>
|
||||
<string><html><head/><body><p>The default color for helper objects such as grids and axes. Location in preferences: <span style=" font-weight:600;">BIM &gt; Defaults &gt; Helper colors</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -395,7 +395,7 @@
|
||||
<item row="2" column="1">
|
||||
<widget class="Gui::ColorButton" name="colorButtonLines">
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>The default color of lines in the 3D view. Location in preferences: <span style=" font-weight:600;">Display &gt; Part Colors &gt; Default line color, Draft &gt; Visual settings &gt; Default line color</span></p></body></html></string>
|
||||
<string><html><head/><body><p>The default color of lines in the 3D view. Location in preferences: <span style=" font-weight:600;">Display &gt; Part/Part Design Color &gt; Shape Appearance &gt; Default line color</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
<item>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>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>).</string>
|
||||
<string>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>.</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
|
||||
@@ -202,7 +202,7 @@ if crashes occur when multiple cores are set.</string>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string>Import struct IFC objects as</string>
|
||||
<string>Import structure IFC objects as</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -235,7 +235,7 @@ class Arch_CloseHoles:
|
||||
def GetResources(self):
|
||||
return {'Pixmap' : 'Arch_CloseHoles',
|
||||
'MenuText': QT_TRANSLATE_NOOP("Arch_CloseHoles","Close Holes"),
|
||||
'ToolTip': QT_TRANSLATE_NOOP("Arch_CloseHoles","Closes holes in open shapes, turning them solids")}
|
||||
'ToolTip': QT_TRANSLATE_NOOP("Arch_CloseHoles","Closes holes in open shapes, turning them into solids")}
|
||||
|
||||
def IsActive(self):
|
||||
v = hasattr(FreeCADGui.getMainWindow().getActiveWindow(), "getSceneGraph")
|
||||
@@ -471,7 +471,7 @@ class Arch_MergeWalls:
|
||||
FreeCAD.ActiveDocument.commitTransaction()
|
||||
return
|
||||
else:
|
||||
FreeCAD.Console.PrintWarning(translate("Arch","The selected wall contains no subwall to merge"))
|
||||
FreeCAD.Console.PrintWarning(translate("Arch","The selected wall contains no subwalls to merge"))
|
||||
return
|
||||
else:
|
||||
FreeCAD.Console.PrintWarning(translate("Arch","Select only wall objects"))
|
||||
|
||||
@@ -37,7 +37,7 @@ class BIM_TDPage:
|
||||
def GetResources(self):
|
||||
return {
|
||||
"Pixmap": "BIM_PageDefault",
|
||||
"MenuText": QT_TRANSLATE_NOOP("BIM_TDPage", "Page"),
|
||||
"MenuText": QT_TRANSLATE_NOOP("BIM_TDPage", "New Page"),
|
||||
"ToolTip": QT_TRANSLATE_NOOP(
|
||||
"BIM_TDPage", "Creates a new TechDraw page from a template"
|
||||
),
|
||||
|
||||
@@ -181,7 +181,7 @@ def getHTMLTemplate():
|
||||
"BIM",
|
||||
"The default WebGL export template is not available at path:"
|
||||
" {}\n\nPlease check your FreeCAD installation or provide a "
|
||||
"custom template under menu Preferences -> Import-Export -> WebGL.",
|
||||
"custom template under menu Preferences → Import-Export → WebGL.",
|
||||
).format(default_template_path)
|
||||
|
||||
# Use getMainWindow() as parent following FreeCAD patterns
|
||||
|
||||
@@ -286,7 +286,7 @@ void MillSim::GuiDisplay::SetupTooltips()
|
||||
"Toggle turn table animation",
|
||||
nullptr);
|
||||
guiItems[eGuiItemAmbientOclusion].toolTip =
|
||||
QCoreApplication::translate("CAM:Simulator:Tooltips", "Toggle ambient oclusion", nullptr);
|
||||
QCoreApplication::translate("CAM:Simulator:Tooltips", "Toggle ambient occlusion", nullptr);
|
||||
guiItems[eGuiItemView].toolTip = QCoreApplication::translate("CAM:Simulator:Tooltips",
|
||||
"Toggle view simulation/model",
|
||||
nullptr);
|
||||
|
||||
@@ -79,18 +79,18 @@ It cannot be zero.</string>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_number">
|
||||
<property name="toolTip">
|
||||
<string>Number of circular layers or rings to create, including a copy of the original object.
|
||||
<string>Number of concentric circles to create, including a copy of the original object.
|
||||
It must be at least 2.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Number of circular layers</string>
|
||||
<string>Number of concentric circles</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QSpinBox" name="spinbox_number">
|
||||
<property name="toolTip">
|
||||
<string>Number of circular layers or rings to create, including a copy of the original object.
|
||||
<string>Number of concentric circles to create, including a copy of the original object.
|
||||
It must be at least 2.</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
|
||||
@@ -567,7 +567,7 @@ Annotation scale widget. If the scale is 1:100 the multiplier is 100.</string>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_DimOvershoot">
|
||||
<property name="text">
|
||||
<string>Dim line overshoot</string>
|
||||
<string>Dimension line overshoot</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -584,7 +584,7 @@ Annotation scale widget. If the scale is 1:100 the multiplier is 100.</string>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_ExtLines">
|
||||
<property name="text">
|
||||
<string>Ext line length</string>
|
||||
<string>Extension line length</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -604,7 +604,7 @@ for linear dimensions.</string>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_ExtOvershoot">
|
||||
<property name="text">
|
||||
<string>Ext line overshoot</string>
|
||||
<string>Extension line overshoot</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -113,7 +113,7 @@ faces are picked during commands.</string>
|
||||
plane orientation appears when picking points</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Show working plane tracker</string>
|
||||
<string>Show working plane orientation</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>showPlaneTracker</cstring>
|
||||
|
||||
@@ -583,7 +583,7 @@ instead of Draft or Part objects. This overrides the 'Import As' setting</string
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>All objects containing faces will be exported as 3D polyfaces</string>
|
||||
<string>All objects containing faces will be exported as 3D polyface meshes</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Export 3D objects as polyface meshes</string>
|
||||
|
||||
@@ -242,7 +242,7 @@ a raw wire from the original shape is added</string>
|
||||
<string>All white lines will appear in black in the SVG for better readability against white backgrounds</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Translate white line color to black</string>
|
||||
<string>Convert white line color to black</string>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
|
||||
@@ -568,7 +568,7 @@ def upgrade(objects, delete=False, force=None):
|
||||
and not utils.get_type(objects[0]) in ["BezCurve", "BSpline", "Wire"]:
|
||||
result = _draftify(objects[0])
|
||||
if result:
|
||||
_msg(translate("draft", "Found 1 non-parametric object: draftifying it"))
|
||||
_msg(translate("draft", "Found 1 non-parametric object: replacing it with a Draft object"))
|
||||
|
||||
# in the following cases there are no faces
|
||||
elif not faces:
|
||||
@@ -612,7 +612,7 @@ def upgrade(objects, delete=False, force=None):
|
||||
if edge_type in ("Line", "Circle"):
|
||||
result = _draftify(objects[0])
|
||||
if result:
|
||||
_msg(translate("draft", "Found 1 non-parametric object: draftifying it"))
|
||||
_msg(translate("draft", "Found 1 non-parametric object: replacing it with a Draft object"))
|
||||
|
||||
# only points, no edges
|
||||
elif not edges and len(objects) > 1:
|
||||
|
||||
@@ -56,7 +56,7 @@ class Downgrade(gui_base_original.Modifier):
|
||||
return {'Pixmap': 'Draft_Downgrade',
|
||||
'Accel': "D, N",
|
||||
'MenuText': QT_TRANSLATE_NOOP("Draft_Downgrade", "Downgrade"),
|
||||
'ToolTip': QT_TRANSLATE_NOOP("Draft_Downgrade", "Downgrades the selected objects into simpler shapes.\nThe result of the operation depends on the types of objects, which may be able to be downgraded several times in a row.\nFor example, it explodes the selected polylines into simpler faces, wires, and then edges. It can also subtract faces.")}
|
||||
'ToolTip': QT_TRANSLATE_NOOP("Draft_Downgrade", "Downgrades the selected objects into simpler shapes.\nThe result of the operation depends on the types of objects, which may be downgraded several times in a row.\nFor example, a 3D solid is deconstructed into separate faces, wires, and then edges. Faces can also be subtracted.")}
|
||||
|
||||
def Activated(self):
|
||||
"""Execute when the command is called."""
|
||||
|
||||
@@ -111,7 +111,7 @@ class Array(DraftLink):
|
||||
"angle, and with certain orientation "
|
||||
"defined by a center and an axis.\n"
|
||||
"- Circular: places the copies "
|
||||
"in concentric circular layers "
|
||||
"in concentric circles "
|
||||
"around the base object.")
|
||||
obj.addProperty("App::PropertyEnumeration",
|
||||
"ArrayType",
|
||||
@@ -314,7 +314,7 @@ class Array(DraftLink):
|
||||
|
||||
if "RadialDistance" not in properties:
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"Distance between circular layers")
|
||||
"Distance between concentric circles")
|
||||
obj.addProperty("App::PropertyDistance",
|
||||
"RadialDistance",
|
||||
"Circular array",
|
||||
@@ -325,7 +325,7 @@ class Array(DraftLink):
|
||||
if "TangentialDistance" not in properties:
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"Distance between copies "
|
||||
"in the same circular layer")
|
||||
"in the same circle")
|
||||
obj.addProperty("App::PropertyDistance",
|
||||
"TangentialDistance",
|
||||
"Circular array",
|
||||
@@ -335,8 +335,8 @@ class Array(DraftLink):
|
||||
|
||||
if "NumberCircles" not in properties:
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"Number of circular layers. "
|
||||
"The 'Base' object counts as one layer.")
|
||||
"Number of concentric circle. "
|
||||
"The 'Base' object counts as one circle.")
|
||||
obj.addProperty("App::PropertyInteger",
|
||||
"NumberCircles",
|
||||
"Circular array",
|
||||
@@ -348,7 +348,7 @@ class Array(DraftLink):
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"A parameter that determines "
|
||||
"how many symmetry planes "
|
||||
"the circular array will have.")
|
||||
"the circular array will have")
|
||||
obj.addProperty("App::PropertyInteger",
|
||||
"Symmetry",
|
||||
"Circular array",
|
||||
|
||||
@@ -50,7 +50,7 @@ class BSpline(DraftObject):
|
||||
obj.addProperty("App::PropertyBool","Closed", "Draft", _tip, locked=True)
|
||||
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"Create a face if this spline is closed")
|
||||
"Create a face if this B-spline is closed")
|
||||
obj.addProperty("App::PropertyBool","MakeFace", "Draft",_tip, locked=True)
|
||||
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property", "The area of this object")
|
||||
|
||||
@@ -144,8 +144,7 @@ class DimensionBase(DraftAnnotation):
|
||||
# but it is not used.
|
||||
if "Support" not in properties:
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"The object measured by this dimension "
|
||||
"object")
|
||||
"The object measured by this dimension")
|
||||
obj.addProperty("App::PropertyLink",
|
||||
"Support",
|
||||
"Dimension",
|
||||
@@ -157,7 +156,7 @@ class DimensionBase(DraftAnnotation):
|
||||
_tip = QT_TRANSLATE_NOOP("App::Property",
|
||||
"The object, and specific subelements "
|
||||
"of it,\n"
|
||||
"that this dimension object "
|
||||
"that this dimension "
|
||||
"is measuring.\n"
|
||||
"\n"
|
||||
"There are various possibilities:\n"
|
||||
|
||||
@@ -215,7 +215,7 @@ class Label(DraftAnnotation):
|
||||
"object defined in 'Target'.\n"
|
||||
"'Tag' and 'Material' only work "
|
||||
"for objects that have these properties, "
|
||||
"like Arch objects.\n"
|
||||
"like BIM objects.\n"
|
||||
"\n"
|
||||
"For 'Position', 'Length', and 'Area' "
|
||||
"these properties will be extracted "
|
||||
|
||||
@@ -334,7 +334,7 @@ class TaskPanelCircularArray:
|
||||
_msg(translate("draft","Object:") + " {}".format(sel_obj.Label))
|
||||
_msg(translate("draft","Radial distance:") + " {}".format(self.r_distance))
|
||||
_msg(translate("draft","Tangential distance:") + " {}".format(self.tan_distance))
|
||||
_msg(translate("draft","Number of circular layers:") + " {}".format(self.number))
|
||||
_msg(translate("draft","Number of concentric circles:") + " {}".format(self.number))
|
||||
_msg(translate("draft","Symmetry parameter:") + " {}".format(self.symmetry))
|
||||
_msg(translate("draft","Center of rotation:")
|
||||
+ " ({0}, {1}, {2})".format(self.center.x,
|
||||
|
||||
@@ -211,7 +211,7 @@ def init_draft_statusbar_scale():
|
||||
scale_label = scale_to_label(annotation_scale)
|
||||
scaleLabel.setText(scale_label)
|
||||
scaleLabel.setToolTip(translate("draft",
|
||||
"Set the scale used by draft annotation tools"))
|
||||
"Set the scale used by Draft annotation tools"))
|
||||
scale_widget.addWidget(scaleLabel)
|
||||
scale_widget.scaleLabel = scaleLabel
|
||||
|
||||
|
||||
@@ -334,7 +334,7 @@ or try saving to a lower DWG version.""") + "\n"
|
||||
FCC.PrintError(translate("draft", "QCAD converter not found") + "\n")
|
||||
|
||||
FCC.PrintError(translate("draft", """No suitable external DWG converter has been found.
|
||||
Please set one manually under menu Edit -> Preferences -> Import/Export -> DWG
|
||||
Please set one manually under menu Edit → Preferences → Import/Export → DWG
|
||||
For more information see:
|
||||
https://wiki.freecad.org/Import_Export_Preferences""") + "\n")
|
||||
return None
|
||||
@@ -401,7 +401,7 @@ def convertToDwg(dxffilename, dwgfilename):
|
||||
FCC.PrintError(translate("draft", "QCAD converter not found") + "\n")
|
||||
|
||||
FCC.PrintError(translate("draft", """No suitable external DWG converter has been found.
|
||||
Please set one manually under menu Edit -> Preferences -> Import/Export -> DWG
|
||||
Please set one manually under menu Edit → Preferences → Import/Export → DWG
|
||||
For more information see:
|
||||
https://wiki.freecad.org/Import_Export_Preferences""") + "\n")
|
||||
return None
|
||||
|
||||
@@ -130,13 +130,13 @@ def errorDXFLib(gui):
|
||||
p = ArchCommands.download(baseurl + f, force=True)
|
||||
if not p:
|
||||
if gui:
|
||||
message = translate("Draft", """Download of dxf libraries failed.
|
||||
Please install the dxf Library addon manually
|
||||
from menu Tools -> Addon Manager""")
|
||||
message = translate("Draft", """Download of DXF libraries failed.
|
||||
Please install the DXF Library addon manually
|
||||
from menu Tools → Addon Manager""")
|
||||
QtWidgets.QMessageBox.information(None, "", message)
|
||||
else:
|
||||
FCC.PrintWarning("The DXF import/export libraries needed by FreeCAD to handle the DXF format are not installed.\n")
|
||||
FCC.PrintWarning("Please install the dxf Library addon from Tools -> Addon Manager\n")
|
||||
FCC.PrintWarning("Please install the DXF Library addon from Tools → Addon Manager\n")
|
||||
break
|
||||
progressbar.stop()
|
||||
sys.path.append(FreeCAD.ConfigGet("UserAppData"))
|
||||
@@ -146,7 +146,7 @@ from menu Tools -> Addon Manager""")
|
||||
the DXF format were not found on this system.
|
||||
Please either allow FreeCAD to download these libraries:
|
||||
1 - Load Draft workbench
|
||||
2 - Menu Edit > Preferences > Import-Export > DXF > Enable downloads
|
||||
2 - Menu Edit → Preferences → Import-Export → DXF → Enable downloads
|
||||
Or download these libraries manually, as explained on
|
||||
https://github.com/yorikvanhavre/Draft-dxf-importer
|
||||
To enabled FreeCAD to download these libraries, answer Yes.""")
|
||||
@@ -164,7 +164,7 @@ To enabled FreeCAD to download these libraries, answer Yes.""")
|
||||
_maj = _ver[0]
|
||||
_min = _ver[1]
|
||||
if float(_maj + "." + _min) >= 0.17:
|
||||
FCC.PrintWarning("Please install the dxf Library addon from Tools -> Addon Manager\n")
|
||||
FCC.PrintWarning("Please install the DXF Library addon from Tools → Addon Manager\n")
|
||||
else:
|
||||
FCC.PrintWarning("Please check https://github.com/yorikvanhavre/Draft-dxf-importer\n")
|
||||
|
||||
@@ -192,13 +192,13 @@ def getDXFlibs():
|
||||
libsok = False
|
||||
except ImportError:
|
||||
libsok = False
|
||||
FCC.PrintWarning("DXF libraries not found. Trying to download...\n")
|
||||
FCC.PrintWarning("DXF libraries not found. Trying to download…\n")
|
||||
else:
|
||||
if float(dxfLibrary.__version__[1:5]) >= CURRENTDXFLIB:
|
||||
libsok = True
|
||||
else:
|
||||
FCC.PrintWarning("DXF libraries need to be updated. "
|
||||
"Trying to download...\n")
|
||||
"Trying to download…\n")
|
||||
libsok = False
|
||||
if not libsok:
|
||||
errorDXFLib(gui)
|
||||
|
||||
@@ -899,7 +899,7 @@ void CmdFemConstraintSpring::activated(int)
|
||||
|
||||
std::string FeatName = getUniqueObjectName("ConstraintSpring");
|
||||
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Make spring on face"));
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Make Spring Constraint"));
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().addObject(\"Fem::ConstraintSpring\",\"%s\")",
|
||||
FeatName.c_str());
|
||||
@@ -1128,10 +1128,10 @@ CmdFemDefineNodesSet::CmdFemDefineNodesSet()
|
||||
{
|
||||
sAppModule = "Fem";
|
||||
sGroup = QT_TR_NOOP("Fem");
|
||||
sMenuText = QT_TR_NOOP("Node Set by Poly");
|
||||
sToolTipText = QT_TR_NOOP("Creates a node set by poly");
|
||||
sMenuText = QT_TR_NOOP("Node Set by Polygon");
|
||||
sToolTipText = QT_TR_NOOP("Creates a node set by polygon selection");
|
||||
sWhatsThis = "FEM_DefineNodesSet";
|
||||
sStatusTip = QT_TR_NOOP("Create node set by Poly");
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "FEM_CreateNodesSet";
|
||||
}
|
||||
|
||||
@@ -1280,10 +1280,10 @@ CmdFemDefineElementsSet::CmdFemDefineElementsSet()
|
||||
{
|
||||
sAppModule = "Fem";
|
||||
sGroup = QT_TR_NOOP("Fem");
|
||||
sMenuText = QT_TR_NOOP("Element Set by Poly");
|
||||
sToolTipText = QT_TR_NOOP("Create element set by poly");
|
||||
sMenuText = QT_TR_NOOP("Element Set From Polygon");
|
||||
sToolTipText = QT_TR_NOOP("Creates a collection of elements selected by a polygon");
|
||||
sWhatsThis = "FEM_DefineElementsSet";
|
||||
sStatusTip = QT_TR_NOOP("Create Element set by Poly");
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "FEM_CreateElementsSet";
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>ccx binary path</string>
|
||||
<string>CCX binary path</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -34,8 +34,7 @@
|
||||
<property name="toolTip">
|
||||
<string>All: All elements will be exported.
|
||||
|
||||
Highest: Only the highest elements will be exported. This means
|
||||
for means volumes for a volume mesh and faces for a shell mesh.
|
||||
Highest: Only the highest elements will be exported. This means volumes for a volume mesh and faces for a shell mesh.
|
||||
|
||||
FEM: Only FEM elements will be exported. This means only edges
|
||||
not belonging to faces and faces not belonging to volumes.</string>
|
||||
|
||||
@@ -175,7 +175,7 @@
|
||||
<item row="4" column="1">
|
||||
<widget class="QLabel" name="user_def_head_19">
|
||||
<property name="text">
|
||||
<string>max shear stress: MS</string>
|
||||
<string>maximum shear stress: MS</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -185,7 +185,7 @@
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="user_def_head_11">
|
||||
<property name="text">
|
||||
<string>max princ. stress vector: s3x, s3y, s3z</string>
|
||||
<string>maximum princ. stress vector: s3x, s3y, s3z</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -195,7 +195,7 @@
|
||||
<item row="5" column="1">
|
||||
<widget class="QLabel" name="user_def_head_16">
|
||||
<property name="text">
|
||||
<string>max principal stress: P1</string>
|
||||
<string>maximum principal stress: P1</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -205,7 +205,7 @@
|
||||
<item row="6" column="0">
|
||||
<widget class="QLabel" name="user_def_head_10">
|
||||
<property name="text">
|
||||
<string>med princ. stress vector: s2x, s2y, s2z</string>
|
||||
<string>medium princ. stress vector: s2x, s2y, s2z</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -215,7 +215,7 @@
|
||||
<item row="6" column="1">
|
||||
<widget class="QLabel" name="user_def_head_17">
|
||||
<property name="text">
|
||||
<string>med principal stress: P2</string>
|
||||
<string>medium principal stress: P2</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -225,7 +225,7 @@
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="user_def_head_9">
|
||||
<property name="text">
|
||||
<string>min princ. stress vector: s1x, s1y, s1z</string>
|
||||
<string>minimum princ. stress vector: s1x, s1y, s1z</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -235,7 +235,7 @@
|
||||
<item row="7" column="1">
|
||||
<widget class="QLabel" name="user_def_head_18">
|
||||
<property name="text">
|
||||
<string>min principal stress: P3</string>
|
||||
<string>minimum principal stress: P3</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
@@ -245,7 +245,7 @@
|
||||
<item row="8" column="0">
|
||||
<widget class="QLabel" name="user_def_head_8">
|
||||
<property name="text">
|
||||
<string>Mohr Coulomb: mc</string>
|
||||
<string>Mohr-Coulomb: mc</string>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::TextSelectableByMouse</set>
|
||||
|
||||
@@ -222,14 +222,14 @@ void myCopyResultsMesh(std::string oldName, std::string newName)
|
||||
Base::Console().warning("copy: %s and %s\n", oldName.c_str(), newName.c_str());
|
||||
if (oldName.compare(newName) == 0 && error == 0) {
|
||||
error = 1;
|
||||
Base::Console().warning("Can't copy ResultMesh to ResultMesh: %s and %s\n",
|
||||
Base::Console().warning("Cannot copy ResultMesh to ResultMesh: %s and %s\n",
|
||||
oldName.c_str(),
|
||||
newName.c_str());
|
||||
QMessageBox::warning(
|
||||
Gui::getMainWindow(),
|
||||
// QMessageBox::warning(Gui::MainWindow(),
|
||||
qApp->translate("CmdFemCreateElementsSet", "Wrong selection"),
|
||||
qApp->translate("CmdFemCreateElementsSet", "Can't copy ResultMesh to ResultMesh"));
|
||||
qApp->translate("CmdFemCreateElementsSet", "Cannot copy ResultMesh to ResultMesh"));
|
||||
}
|
||||
if ((oldName.find("Result") == std::string::npos || newName.find("Result") == std::string::npos)
|
||||
&& error == 0) {
|
||||
@@ -239,7 +239,7 @@ void myCopyResultsMesh(std::string oldName, std::string newName)
|
||||
Gui::getMainWindow(),
|
||||
// QMessageBox::warning(Gui::MainWindow(),
|
||||
qApp->translate("CmdFemCreateElementsSet", "Wrong selection"),
|
||||
qApp->translate("CmdFemCreateElementsSet", "Mesh must be a Results mesh"));
|
||||
qApp->translate("CmdFemCreateElementsSet", "Mesh must be a ResultMesh"));
|
||||
}
|
||||
if (error == 0) {
|
||||
Gui::Command::doCommand(Gui::Command::Doc,
|
||||
|
||||
@@ -54,7 +54,7 @@ TaskFemConstraint::TaskFemConstraint(ViewProviderFemConstraint* ConstraintView,
|
||||
QWidget* parent,
|
||||
const char* pixmapname)
|
||||
: TaskBox(Gui::BitmapFactory().pixmap(pixmapname),
|
||||
tr("Analysis feature parameters"),
|
||||
tr("Analysis Feature Properties"),
|
||||
true,
|
||||
parent)
|
||||
, proxy(nullptr)
|
||||
|
||||
@@ -38,7 +38,10 @@ using namespace FemGui;
|
||||
using namespace Gui;
|
||||
|
||||
TaskObjectName::TaskObjectName(App::DocumentObject* pcObject, QWidget* parent)
|
||||
: TaskBox(Gui::BitmapFactory().pixmap("FEM_CreateNodesSet"), tr("TaskObjectName"), true, parent)
|
||||
: TaskBox(Gui::BitmapFactory().pixmap("FEM_CreateNodesSet"),
|
||||
tr("Name of the object"),
|
||||
true,
|
||||
parent)
|
||||
, pcObject(pcObject)
|
||||
, ui(new Ui_TaskObjectName)
|
||||
{
|
||||
|
||||
@@ -165,7 +165,7 @@ def vtk_module_handling():
|
||||
|
||||
if not FreeCAD.GuiUp:
|
||||
FreeCAD.Console.PrintError(
|
||||
"FEM: vtk python module is not compatible with internal vtk library"
|
||||
"FEM: VTK Python module is not compatible with internal VTK library"
|
||||
)
|
||||
return
|
||||
|
||||
@@ -183,7 +183,7 @@ def vtk_module_handling():
|
||||
"FEM",
|
||||
(
|
||||
"FreeCAD is linked to a different VTK library than the imported "
|
||||
"VTK python module. This is incompatible and will lead to errors."
|
||||
"VTK Python module. This is incompatible and will lead to errors."
|
||||
"\n\nWrong python module is imported from: \n{}"
|
||||
),
|
||||
).format(path)
|
||||
@@ -216,7 +216,7 @@ def vtk_module_handling():
|
||||
|
||||
else:
|
||||
message += translate(
|
||||
"FEM", "\n\nNo matching module was found in the current python path."
|
||||
"FEM", "\n\nNo matching module was found in the current Python path."
|
||||
)
|
||||
|
||||
# raise a dialog to the user
|
||||
@@ -224,7 +224,7 @@ def vtk_module_handling():
|
||||
|
||||
button = QtGui.QMessageBox.critical(
|
||||
FreeCADGui.getMainWindow(),
|
||||
translate("FEM", "VTK module conflict"),
|
||||
translate("FEM", "VTK Python module conflict"),
|
||||
message,
|
||||
buttons=buttons,
|
||||
)
|
||||
@@ -250,9 +250,9 @@ def vtk_compatibility_abort(inform=True):
|
||||
|
||||
button = QtGui.QMessageBox.critical(
|
||||
FreeCADGui.getMainWindow(),
|
||||
translate("FEM", "VTK module conflict"),
|
||||
translate("FEM", "VTK Python Module Conflict"),
|
||||
translate(
|
||||
"FEM", "This functionality is not available due to VTK python module conflict"
|
||||
"FEM", "This functionality is not available due to VTK Python module conflict"
|
||||
),
|
||||
buttons=QtGui.QMessageBox.Discard,
|
||||
)
|
||||
|
||||
@@ -736,7 +736,9 @@ class _TaskPanel:
|
||||
)
|
||||
error_message = translate("FEM", the_error_messagetext) + "\n"
|
||||
FreeCAD.Console.PrintError(error_message)
|
||||
QtGui.QMessageBox.critical(None, translate("FEM", "Empty result mesh"), error_message)
|
||||
QtGui.QMessageBox.critical(
|
||||
None, translate("FEM", "Result mesh is empty"), error_message
|
||||
)
|
||||
elif self.mesh_obj.FemMesh.NodeCount == len(self.result_obj.NodeNumbers):
|
||||
self.suitable_results = True
|
||||
hide_parts_constraints()
|
||||
|
||||
@@ -70,11 +70,11 @@ MD_RENDERED_URL = "https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wi
|
||||
MD_TRANSLATIONS_FOLDER = "translations"
|
||||
ERRORTXT = translate(
|
||||
"Help",
|
||||
"Contents for this page could not be retrieved. Please check settings under menu Edit -> Preferences -> General -> Help",
|
||||
"Contents for this page could not be retrieved. Please check settings under menu Edit → Preferences → General → Help",
|
||||
)
|
||||
LOCTXT = translate(
|
||||
"Help",
|
||||
"Help files location could not be determined. Please check settings under menu Edit -> Preferences -> General -> Help",
|
||||
"Help files location could not be determined. Please check settings under menu Edit → Preferences → General → Help",
|
||||
)
|
||||
LOGTXT = translate(
|
||||
"Help",
|
||||
|
||||
@@ -138,12 +138,11 @@ void CmdMeshUnion::activated(int)
|
||||
qApp->translate("Mesh_Union", "Unknown error occurred while running OpenSCAD."));
|
||||
}
|
||||
else {
|
||||
QMessageBox::warning(
|
||||
Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit http://www.openscad.org/index.html to install it."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit https://openscad.org/ to install it."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -217,12 +216,11 @@ void CmdMeshDifference::activated(int)
|
||||
qApp->translate("Mesh_Union", "Unknown error occurred while running OpenSCAD."));
|
||||
}
|
||||
else {
|
||||
QMessageBox::warning(
|
||||
Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit http://www.openscad.org/index.html to install it."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit https://openscad.org/ to install it."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -296,12 +294,11 @@ void CmdMeshIntersection::activated(int)
|
||||
qApp->translate("Mesh_Union", "Unknown error occurred while running OpenSCAD."));
|
||||
}
|
||||
else {
|
||||
QMessageBox::warning(
|
||||
Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit http://www.openscad.org/index.html to install it."));
|
||||
QMessageBox::warning(Gui::getMainWindow(),
|
||||
qApp->translate("Mesh_Union", "OpenSCAD"),
|
||||
qApp->translate("Mesh_Union",
|
||||
"OpenSCAD cannot be found on the system.\n"
|
||||
"Visit https://openscad.org/ to install it."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1432,8 +1429,8 @@ CmdMeshBoundingBox::CmdMeshBoundingBox()
|
||||
{
|
||||
sAppModule = "Mesh";
|
||||
sGroup = QT_TR_NOOP("Mesh");
|
||||
sMenuText = QT_TR_NOOP("Boundings Info");
|
||||
sToolTipText = QT_TR_NOOP("Shows the boundings of the selected mesh");
|
||||
sMenuText = QT_TR_NOOP("Bounding Box Info");
|
||||
sToolTipText = QT_TR_NOOP("Shows the bounding box coordinates of the selected mesh");
|
||||
sWhatsThis = "Mesh_BoundingBox";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "Mesh_BoundingBox";
|
||||
@@ -1567,8 +1564,8 @@ CmdMeshFillInteractiveHole::CmdMeshFillInteractiveHole()
|
||||
{
|
||||
sAppModule = "Mesh";
|
||||
sGroup = QT_TR_NOOP("Mesh");
|
||||
sMenuText = QT_TR_NOOP("Close Holes");
|
||||
sToolTipText = QT_TR_NOOP("Closes holes interactively in the mesh");
|
||||
sMenuText = QT_TR_NOOP("Close Hole");
|
||||
sToolTipText = QT_TR_NOOP("Closes a hole interactively in the mesh");
|
||||
sWhatsThis = "Mesh_FillInteractiveHole";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "Mesh_FillInteractiveHole";
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<property name="text">
|
||||
<string>Press 'Start', then pick points on the mesh; when enough points have been set, right-click and choose 'Create'. Repeat this process to create more splines. Close this task panel to complete the operation.
|
||||
|
||||
This command only works with a 'mesh' object, not a regular face or surface. To convert an object to a mesh use the tools of the Mesh workbench.</string>
|
||||
This command only works with a Mesh object, not a regular face or surface. To convert an object to a mesh use the tools of the Mesh workbench.</string>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>true</bool>
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
<string>If this is checked, Features will claim their children in the tree view</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use ViewProvider in Tree View</string>
|
||||
<string>Use ViewProviders in Tree View</string>
|
||||
</property>
|
||||
<property name="prefEntry" stdset="0">
|
||||
<cstring>useViewProviderTree</cstring>
|
||||
|
||||
@@ -64,7 +64,7 @@ std::string FaceMakerBullseye::getUserFriendlyName() const
|
||||
|
||||
std::string FaceMakerBullseye::getBriefExplanation() const
|
||||
{
|
||||
return {tr("Supports making planar faces with holes with islands.").toStdString()};
|
||||
return {tr("Supports making planar faces with holes with islands in them").toStdString()};
|
||||
}
|
||||
|
||||
bool FaceMakerBullseye::WireInfo::operator<(const WireInfo& other) const
|
||||
@@ -100,7 +100,7 @@ void FaceMakerBullseye::Build_Essence()
|
||||
}
|
||||
BRepLib_FindSurface planeFinder(comp, -1, /*OnlyPlane=*/Standard_True);
|
||||
if (!planeFinder.Found()) {
|
||||
throw Base::ValueError("Wires are not coplanar.");
|
||||
throw Base::ValueError("Wires are not coplanar");
|
||||
}
|
||||
plane = GeomAdaptor_Surface(planeFinder.Surface()).Plane();
|
||||
}
|
||||
@@ -221,7 +221,7 @@ FaceMakerBullseye::FaceDriller::hitTest(const TopoShape& shape) const
|
||||
auto point = BRep_Tool::Pnt(vertex);
|
||||
double u, v;
|
||||
GeomAPI_ProjectPointOnSurf(point, myHPlane).LowerDistanceParameters(u, v);
|
||||
const char* err = "FaceMakerBullseye::FaceDriller::hitTest: result unknown.";
|
||||
const char* err = "FaceMakerBullseye::FaceDriller::hitTest: result unknown";
|
||||
auto hit = HitTest::HitNone;
|
||||
if (!myFaceBound.IsNull()) {
|
||||
BRepClass_FaceClassifier cl(myFaceBound, gp_Pnt2d(u, v), tol);
|
||||
@@ -371,5 +371,5 @@ std::string FaceMakerRing::getUserFriendlyName() const
|
||||
|
||||
std::string FaceMakerRing::getBriefExplanation() const
|
||||
{
|
||||
return {tr("Supports making planar faces with holes and holes as faces.").toStdString()};
|
||||
return {tr("Supports making planar faces with holes and holes as faces").toStdString()};
|
||||
}
|
||||
|
||||
@@ -249,7 +249,7 @@ std::string FaceMakerCheese::getUserFriendlyName() const
|
||||
|
||||
std::string FaceMakerCheese::getBriefExplanation() const
|
||||
{
|
||||
return {tr("Supports making planar faces with holes, but no islands inside holes.").toStdString()};
|
||||
return {tr("Supports making planar faces with holes, but no islands inside holes").toStdString()};
|
||||
}
|
||||
|
||||
void FaceMakerCheese::Build_Essence()
|
||||
|
||||
@@ -1067,7 +1067,7 @@ void CmdPartImportCurveNet::activated(int iMsg)
|
||||
QString fn = Gui::FileDialog::getOpenFileName(Gui::getMainWindow(), QString(), QString(), filter.join(QLatin1String(";;")));
|
||||
if (!fn.isEmpty()) {
|
||||
QFileInfo fi; fi.setFile(fn);
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Part Import Curve Net"));
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Import Curve Net"));
|
||||
doCommand(Doc,"f = App.activeDocument().addObject(\"Part::CurveNet\",\"%s\")", (const char*)fi.baseName().toLatin1());
|
||||
doCommand(Doc,"f.FileName = \"%s\"",(const char*)fn.toLatin1());
|
||||
commitCommand();
|
||||
|
||||
@@ -67,7 +67,7 @@ void CmdPartSimpleCylinder::activated(int iMsg)
|
||||
if (dlg.exec()== QDialog::Accepted) {
|
||||
Base::Vector3d dir = dlg.getDirection();
|
||||
Base::Vector3d pos = dlg.getPosition();
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Create Part Cylinder"));
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Create Cylinder"));
|
||||
doCommand(Doc,"from FreeCAD import Base");
|
||||
doCommand(Doc,"import Part");
|
||||
doCommand(Doc,"App.ActiveDocument.addObject(\"Part::Feature\",\"Cylinder\")"
|
||||
|
||||
@@ -35,8 +35,8 @@ using namespace PartGui;
|
||||
qApp->translate("Workbench", "&Simple");
|
||||
qApp->translate("Workbench", "&Parametric");
|
||||
qApp->translate("Workbench", "Solids");
|
||||
qApp->translate("Workbench", "Part tools");
|
||||
qApp->translate("Workbench", "Boolean");
|
||||
qApp->translate("Workbench", "Part Tools");
|
||||
qApp->translate("Workbench", "Boolean Tools");
|
||||
qApp->translate("Workbench", "Primitives");
|
||||
qApp->translate("Workbench", "Join");
|
||||
qApp->translate("Workbench", "Split");
|
||||
@@ -190,7 +190,7 @@ Gui::ToolBarItem* Workbench::setupToolBars() const
|
||||
<< "Part_Builder";
|
||||
|
||||
Gui::ToolBarItem* tool = new Gui::ToolBarItem(root);
|
||||
tool->setCommand("Part tools");
|
||||
tool->setCommand("Part Tools");
|
||||
if (hasSketcher) {
|
||||
*tool << "Sketcher_NewSketch";
|
||||
}
|
||||
@@ -212,7 +212,7 @@ Gui::ToolBarItem* Workbench::setupToolBars() const
|
||||
<< "Part_ColorPerFace"; // See issues #0477 and #1954 in the tracker
|
||||
|
||||
Gui::ToolBarItem* boolop = new Gui::ToolBarItem(root);
|
||||
boolop->setCommand("Boolean");
|
||||
boolop->setCommand("Boolean Tools");
|
||||
*boolop << "Part_CompCompoundTools"
|
||||
<< "Part_Boolean"
|
||||
<< "Part_Cut"
|
||||
|
||||
@@ -235,7 +235,7 @@ App::DocumentObjectExecReturn *Pipe::execute()
|
||||
for (auto& subSet : multisections) {
|
||||
if (!subSet.first->isDerivedFrom<Part::Feature>())
|
||||
return new App::DocumentObjectExecReturn(QT_TRANSLATE_NOOP("Exception",
|
||||
"Pipe: All sections need to be part features"));
|
||||
"Pipe: All sections need to be Part features"));
|
||||
|
||||
// if the section is an object's face then take just the face
|
||||
TopoDS_Shape shape = getSectionShape(subSet.first, subSet.second);
|
||||
|
||||
@@ -914,7 +914,7 @@ void prepareProfileBased(PartDesign::Body *pcActiveBody, Gui::Command* cmd, cons
|
||||
if (!onlyAllowed) {
|
||||
QMessageBox msgBox(Gui::getMainWindow());
|
||||
msgBox.setText(QObject::tr("Cannot use selected object. Selected object must belong to the active body"));
|
||||
msgBox.setInformativeText(QObject::tr("Consider using a sape binder or a base feature to reference external geometry in a body"));
|
||||
msgBox.setInformativeText(QObject::tr("Consider using a shape binder or a base feature to reference external geometry in a body"));
|
||||
msgBox.setStandardButtons(QMessageBox::Ok);
|
||||
msgBox.setDefaultButton(QMessageBox::Ok);
|
||||
msgBox.exec();
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Base z-xis</string>
|
||||
<string>Base z-axis</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
|
||||
@@ -87,7 +87,7 @@ CmdRobotInsertWaypoint::CmdRobotInsertWaypoint()
|
||||
{
|
||||
sAppModule = "Robot";
|
||||
sGroup = QT_TR_NOOP("Robot");
|
||||
sMenuText = QT_TR_NOOP("Insert in trajectory");
|
||||
sMenuText = QT_TR_NOOP("Insert in Trajectory");
|
||||
sToolTipText = QT_TR_NOOP("Inserts the robot tool location into the trajectory");
|
||||
sWhatsThis = "Robot_InsertWaypoint";
|
||||
sStatusTip = sToolTipText;
|
||||
|
||||
@@ -3869,7 +3869,7 @@ void CmdSketcherConstrainBlock::activated(int iMsg)
|
||||
|
||||
for (std::vector<int>::iterator itg = GeoId.begin(); itg != GeoId.end(); ++itg) {
|
||||
// undo command open
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Add 'Block' constraint"));
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Add Block constraint"));
|
||||
|
||||
bool safe = addConstraintSafely(Obj, [&]() {
|
||||
Gui::cmdAppObjectArgs(Obj, "addConstraint(Sketcher.Constraint('Block',%d))", (*itg));
|
||||
|
||||
@@ -112,7 +112,7 @@ CmdSketcherConvertToNURBS::CmdSketcherConvertToNURBS()
|
||||
sAppModule = "Sketcher";
|
||||
sGroup = "Sketcher";
|
||||
sMenuText = QT_TR_NOOP("Geometry to B-Spline");
|
||||
sToolTipText = QT_TR_NOOP("Converts the selected geometry to a B-spline");
|
||||
sToolTipText = QT_TR_NOOP("Converts the selected geometry to B-splines");
|
||||
sWhatsThis = "Sketcher_BSplineConvertToNURBS";
|
||||
sStatusTip = sToolTipText;
|
||||
sPixmap = "Sketcher_BSplineConvertToNURBS";
|
||||
|
||||
@@ -889,7 +889,7 @@ protected:
|
||||
try {
|
||||
// add auto-constraints
|
||||
if (owncommand) {
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add auto constraints"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Auto-Constraints"));
|
||||
}
|
||||
|
||||
tryAddAutoConstraints();
|
||||
|
||||
@@ -760,7 +760,7 @@ void DrawSketchHandler::createAutoConstraints(const std::vector<AutoConstraint>&
|
||||
|
||||
if (createowncommand) {
|
||||
// Open the Command
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add auto constraints"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Auto-Constraints"));
|
||||
}
|
||||
|
||||
// Iterate through constraints
|
||||
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
void activated() override
|
||||
{
|
||||
DrawSketchHandlerBSplineBase::activated();
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add sketch bSpline"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Sketch B-Spline"));
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -595,7 +595,7 @@ private:
|
||||
{
|
||||
Gui::Command::abortCommand();
|
||||
tryAutoRecomputeIfNotSolve(sketchgui->getSketchObject());
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add sketch B-spline"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Sketch B-Spline"));
|
||||
|
||||
SplineDegree = 3;
|
||||
geoIds.clear();
|
||||
@@ -733,7 +733,7 @@ private:
|
||||
// Restart the command
|
||||
Gui::Command::abortCommand();
|
||||
tryAutoRecomputeIfNotSolve(sketchgui->getSketchObject());
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add sketch B-spline"));
|
||||
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Sketch B-Spline"));
|
||||
|
||||
// Add the necessary alignment geometries and constraints
|
||||
for (size_t i = 0; i < geoIds.size(); ++i) {
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
<item row="1" column="3">
|
||||
<widget class="QLabel" name="label_pattern">
|
||||
<property name="text">
|
||||
<string>Pattern</string>
|
||||
<string>Line Type</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -519,7 +519,7 @@
|
||||
<item row="9" column="3">
|
||||
<widget class="QComboBox" name="ExternalPattern">
|
||||
<property name="toolTip">
|
||||
<string>Line pattern of external edges</string>
|
||||
<string>Line pattern of external reference edges</string>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>-1</number>
|
||||
|
||||
@@ -351,7 +351,7 @@ void SketcherValidation::onOrientLockEnableClicked()
|
||||
*sketch,
|
||||
tr("Constraint orientation locking"),
|
||||
tr("Orientation locking was enabled and recomputed for %1 constraints. The"
|
||||
" constraints have been listed in the report view (menu View -> Panels ->"
|
||||
" constraints have been listed in the report view (menu View → Panels →"
|
||||
" Report view).")
|
||||
.arg(n));
|
||||
|
||||
@@ -372,7 +372,7 @@ void SketcherValidation::onOrientLockDisableClicked()
|
||||
*sketch,
|
||||
tr("Constraint orientation locking"),
|
||||
tr("Orientation locking was disabled for %1 constraints. The"
|
||||
" constraints have been listed in the report view (menu View -> Panels ->"
|
||||
" constraints have been listed in the report view (menu View → Panels →"
|
||||
" Report view). Note that for all future constraints, the locking still"
|
||||
" defaults to ON.")
|
||||
.arg(n));
|
||||
|
||||
@@ -222,7 +222,7 @@ void StartView::configureNewFileButtons(QLayout* layout) const
|
||||
QLatin1String(":/icons/AssemblyWorkbench.svg")}));
|
||||
auto draft = gsl::owner<NewFileButton*>(
|
||||
new NewFileButton({tr("2D Draft"),
|
||||
tr("Creates a 2D draft document"),
|
||||
tr("Creates a 2D Draft document"),
|
||||
QLatin1String(":/icons/DraftWorkbench.svg")}));
|
||||
auto arch =
|
||||
gsl::owner<NewFileButton*>(new NewFileButton({tr("BIM/Architecture"),
|
||||
|
||||
@@ -796,7 +796,7 @@ void CmdTechDrawSectionGroup::languageChange()
|
||||
arc1->setToolTip(QApplication::translate("TechDraw_SectionView", "Inserts a simple section view"));
|
||||
arc1->setStatusTip(arc1->toolTip());
|
||||
QAction* arc2 = a[1];
|
||||
arc2->setText(QApplication::translate("CmdTechDrawSectionGroup", "Complex Section"));
|
||||
arc2->setText(QApplication::translate("CmdTechDrawSectionGroup", "Complex Section View"));
|
||||
arc2->setToolTip(
|
||||
QApplication::translate("TechDraw_ComplexSection", "Inserts a complex section view"));
|
||||
arc2->setStatusTip(arc2->toolTip());
|
||||
@@ -1870,7 +1870,7 @@ void CmdTechDrawExportPageDXF::activated(int iMsg)
|
||||
if (v->isDerivedFrom<TechDraw::DrawViewArch>()) {
|
||||
QMessageBox::StandardButton rc = QMessageBox::question(
|
||||
Gui::getMainWindow(), QObject::tr("Cannot export selection"),
|
||||
QObject::tr("Page contains DrawViewArch which will not be exported. Continue?"),
|
||||
QObject::tr("Page contains DrawViewBIM which will not be exported. Continue?"),
|
||||
QMessageBox::StandardButtons(QMessageBox::Yes | QMessageBox::No));
|
||||
if (rc == QMessageBox::No) {
|
||||
return;
|
||||
|
||||
@@ -563,7 +563,7 @@ This affects only the toolbar; all tools remain available via the menu and short
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="radiusDiameterLabel">
|
||||
<property name="text">
|
||||
<string>Dimension tool diameter/radius mode:</string>
|
||||
<string>Dimension tool diameter/radius mode</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Text:</string>
|
||||
<string>Text</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -33,7 +33,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Text color:</string>
|
||||
<string>Text color</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -92,7 +92,7 @@
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Bubble shape:</string>
|
||||
<string>Bubble shape</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string notr="true">X:</string>
|
||||
<string notr="true">X</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -112,7 +112,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string notr="true">Y:</string>
|
||||
<string notr="true">Y</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -126,7 +126,7 @@
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string notr="true">Z:</string>
|
||||
<string notr="true">Z</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -144,7 +144,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="text">
|
||||
<string>Radius:</string>
|
||||
<string>Radius</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -178,7 +178,7 @@
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string>End angle:</string>
|
||||
<string>End angle</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string notr="true">X:</string>
|
||||
<string notr="true">X</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -105,7 +105,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string notr="true">Y:</string>
|
||||
<string notr="true">Y</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -119,7 +119,7 @@
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string notr="true">Z:</string>
|
||||
<string notr="true">Z</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -170,7 +170,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string notr="true">X:</string>
|
||||
<string notr="true">X</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -184,7 +184,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string notr="true">Y:</string>
|
||||
<string notr="true">Y</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -198,7 +198,7 @@
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string notr="true">Z:</string>
|
||||
<string notr="true">Z</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
<item row="2" column="4">
|
||||
<widget class="QPushButton" name="pbA10">
|
||||
<property name="toolTip">
|
||||
<string>Circular runout</string>
|
||||
<string>Circular run-out</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string notr="true">↗</string>
|
||||
@@ -143,7 +143,7 @@
|
||||
<item row="3" column="0">
|
||||
<widget class="QPushButton" name="pbA11">
|
||||
<property name="toolTip">
|
||||
<string>Total runout</string>
|
||||
<string>Total run-out</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string notr="true">⌰</string>
|
||||
@@ -214,7 +214,7 @@
|
||||
</font>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Minimax (Tschebyschew)</string>
|
||||
<string>Minimax (Chebychev)</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string notr="true">Ⓒ</string>
|
||||
|
||||
@@ -76,7 +76,7 @@ the negated value for 'Undertolerance'.</string>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>Undertolerance:</string>
|
||||
<string>Undertolerance</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -205,7 +205,7 @@ by negative value of 'Overtolerance'.</string>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lblFeature">
|
||||
<property name="text">
|
||||
<string>Feature1:</string>
|
||||
<string>Feature1</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -84,7 +84,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Geometry1:</string>
|
||||
<string>Geometry1</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -104,7 +104,7 @@
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="lblGeometry">
|
||||
<property name="text">
|
||||
<string>Feature2:</string>
|
||||
<string>Feature2</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -124,7 +124,7 @@
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Geometry2:</string>
|
||||
<string>Geometry2</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_styles">
|
||||
<property name="text">
|
||||
<string>Line style:</string>
|
||||
<string>Line style</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -45,7 +45,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_width">
|
||||
<property name="text">
|
||||
<string>Line width:</string>
|
||||
<string>Line width</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -37,9 +37,9 @@ using namespace TechDrawGui;
|
||||
|
||||
#if 0// needed for Qt's lupdate utility
|
||||
qApp->translate("Workbench", "Dimensions");
|
||||
qApp->translate("Workbench", "Extensions: Attributes/Modifications");
|
||||
qApp->translate("Workbench", "Extensions: Centerlines/Threading");
|
||||
qApp->translate("Workbench", "Extensions: Dimensions");
|
||||
qApp->translate("Workbench", "Attributes/Modifications");
|
||||
qApp->translate("Workbench", "Centerlines/Threading");
|
||||
qApp->translate("Workbench", "Format/Organize Dimensions");
|
||||
qApp->translate("Workbench", "Annotations");
|
||||
qApp->translate("Workbench", "Stacking");
|
||||
qApp->translate("Workbench", "Add Lines");
|
||||
@@ -101,7 +101,7 @@ Gui::MenuItem* Workbench::setupMenuBar() const
|
||||
|
||||
// extension: attributes and modifications
|
||||
Gui::MenuItem* toolattrib = new Gui::MenuItem;
|
||||
toolattrib->setCommand("Extensions: Attributes/Modifications");
|
||||
toolattrib->setCommand("Attributes/Modifications");
|
||||
*toolattrib << "TechDraw_ExtensionSelectLineAttributes";
|
||||
*toolattrib << "TechDraw_ExtensionChangeLineAttributes";
|
||||
*toolattrib << "Separator";
|
||||
@@ -124,7 +124,7 @@ Gui::MenuItem* Workbench::setupMenuBar() const
|
||||
|
||||
// extension: centerlines and threading
|
||||
Gui::MenuItem* toolcenter = new Gui::MenuItem;
|
||||
toolcenter->setCommand("Extensions: Centerlines/Threading");
|
||||
toolcenter->setCommand("Centerlines/Threading");
|
||||
*toolcenter << "TechDraw_ExtensionCircleCenterLines";
|
||||
*toolcenter << "TechDraw_ExtensionHoleCircle";
|
||||
*toolcenter << "Separator";
|
||||
@@ -145,7 +145,7 @@ Gui::MenuItem* Workbench::setupMenuBar() const
|
||||
|
||||
// extension: dimensions
|
||||
Gui::MenuItem* tooldimensions = new Gui::MenuItem;
|
||||
tooldimensions->setCommand("Extensions: Dimensions");
|
||||
tooldimensions->setCommand("Format/Organize Dimensions");
|
||||
*tooldimensions << "TechDraw_ExtensionCreateHorizChainDimension";
|
||||
*tooldimensions << "TechDraw_ExtensionCreateVertChainDimension";
|
||||
*tooldimensions << "TechDraw_ExtensionCreateObliqueChainDimension";
|
||||
|
||||
@@ -28,7 +28,7 @@ HINT: Make sure that the symlink /usr/bin/python exists and points to the Python
|
||||
|
||||
NOTE: To make sure FreeCAD saves thumbnail information:
|
||||
|
||||
Edit -> Preferences... -> Document -> Save thumbnail into project when saving document
|
||||
Edit → Preferences → Document → Save thumbnail into project when saving document
|
||||
"""
|
||||
import sys
|
||||
import zipfile
|
||||
|
||||
Reference in New Issue
Block a user