mirror of
https://github.com/leozide/leocad.git
synced 2026-10-26 22:10:32 +00:00
Standardize model terminology and command descriptions
Use model and submodel terminology in user-facing help, errors, and the Windows file-type description. Standardize keyframe and spotlight text across menus, properties, undo history, and default light names while preserving internal identifiers and file-format tokens. Correct the directional-light and movement-snapping descriptions, remove obsolete Ctrl advice from Zoom Extents, and fix deselection and rotation wording. Leave translation catalogs unchanged for the deferred catalog update. Validation: debug build passes without warnings; UI XML and string-only diff checks pass.
This commit is contained in:
1 parent
d7dde4906c
commit
513e556ce9
13 files changed
+53
-53
No files matched your search
+17
-17
@@ -8,7 +8,7 @@ const lcCommand gCommands[] =
|
||||
QT_TRANSLATE_NOOP("Action", "File.New"),
|
||||
QT_TRANSLATE_NOOP("Menu", "&New"),
|
||||
QT_TRANSLATE_NOOP("Status", "Create a new model"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>New Project</b></p><p>Start a new project with an empty model. If the current project has unsaved changes, LeoCAD asks whether to save them before replacing it.</p>"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>New Model</b></p><p>Create a new, empty model. If the current model has unsaved changes, LeoCAD asks whether to save them before replacing it.</p>"),
|
||||
"Ctrl+N"
|
||||
},
|
||||
// LC_FILE_OPEN
|
||||
@@ -16,7 +16,7 @@ const lcCommand gCommands[] =
|
||||
QT_TRANSLATE_NOOP("Action", "File.Open"),
|
||||
QT_TRANSLATE_NOOP("Menu", "&Open..."),
|
||||
QT_TRANSLATE_NOOP("Status", "Open an existing model"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Open Project</b></p><p>Choose an existing model or project file to work on. If the current project has unsaved changes, save or discard those changes before opening the chosen file.</p>"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Open Model</b></p><p>Choose an existing model file to work on. If the current model has unsaved changes, save or discard those changes before opening the chosen file.</p>"),
|
||||
"Ctrl+O"
|
||||
},
|
||||
// LC_FILE_MERGE
|
||||
@@ -32,7 +32,7 @@ const lcCommand gCommands[] =
|
||||
QT_TRANSLATE_NOOP("Action", "File.Save"),
|
||||
QT_TRANSLATE_NOOP("Menu", "&Save"),
|
||||
QT_TRANSLATE_NOOP("Status", "Save the current model"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Save Project</b></p><p>Write the current project, including its submodels, to disk. The first save asks for a filename. Use Save As to save a separate copy under another name.</p>"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Save Model</b></p><p>Save the model and its submodels to disk. The first save asks for a filename. Use Save As to save a separate copy under another name.</p>"),
|
||||
"Ctrl+S"
|
||||
},
|
||||
// LC_FILE_SAVEAS
|
||||
@@ -328,7 +328,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Edit.SelectNone"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Select &None"),
|
||||
QT_TRANSLATE_NOOP("Status", "De-select everything"),
|
||||
QT_TRANSLATE_NOOP("Status", "Deselect everything"),
|
||||
"",
|
||||
""
|
||||
},
|
||||
@@ -432,7 +432,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Edit.Snap.Toggle"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Move Snap Enabled"),
|
||||
QT_TRANSLATE_NOOP("Status", "Toggle snap axes"),
|
||||
QT_TRANSLATE_NOOP("Status", "Toggle movement snapping"),
|
||||
"",
|
||||
""
|
||||
},
|
||||
@@ -743,8 +743,8 @@ const lcCommand gCommands[] =
|
||||
// LC_EDIT_ACTION_SPOTLIGHT
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Edit.Tool.SpotLight"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Spot Light"),
|
||||
QT_TRANSLATE_NOOP("Status", "Add new spot lights to the model"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Spotlight"),
|
||||
QT_TRANSLATE_NOOP("Status", "Add new spotlights to the model"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Spotlight Tool</b></p><p>Use the model view to create a directed cone of light. In Properties, adjust its position and target, cone angle, penumbra, and renderer-specific power.</p>"),
|
||||
""
|
||||
},
|
||||
@@ -752,7 +752,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Edit.Tool.DirectionalLight"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Directional Light"),
|
||||
QT_TRANSLATE_NOOP("Status", "Add new omnidirectional light sources to the model"),
|
||||
QT_TRANSLATE_NOOP("Status", "Add new directional light sources to the model"),
|
||||
QT_TRANSLATE_NOOP("WhatsThis", "<p><b>Directional Light Tool</b></p><p>Create a light with parallel rays, such as sunlight. Its direction determines the illumination. Select it to adjust its transform, color, and renderer-specific settings in Properties.</p>"),
|
||||
""
|
||||
},
|
||||
@@ -896,7 +896,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "View.ZoomExtents"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Zoom E&xtents"),
|
||||
QT_TRANSLATE_NOOP("Status", "Fit all pieces in the current view (hold the CTRL key down to zoom all views)"),
|
||||
QT_TRANSLATE_NOOP("Status", "Fit all pieces in the current view"),
|
||||
"",
|
||||
""
|
||||
},
|
||||
@@ -1439,8 +1439,8 @@ const lcCommand gCommands[] =
|
||||
// LC_PIECE_REMOVE_KEY_FRAMES
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.RemoveKeyFrames"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Remove &Key Frames"),
|
||||
QT_TRANSLATE_NOOP("Status", "Remove all key frames from the selected pieces"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Remove &Keyframes"),
|
||||
QT_TRANSLATE_NOOP("Status", "Remove all keyframes from the selected pieces"),
|
||||
"",
|
||||
""
|
||||
},
|
||||
@@ -1536,7 +1536,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.PlusX"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate +X"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the X axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the X axis"),
|
||||
"",
|
||||
"Shift+Down"
|
||||
},
|
||||
@@ -1544,7 +1544,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.MinusX"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate -X"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the X axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the X axis"),
|
||||
"",
|
||||
"Shift+Up"
|
||||
},
|
||||
@@ -1552,7 +1552,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.PlusY"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate +Y"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the Y axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the Y axis"),
|
||||
"",
|
||||
"Shift+Right"
|
||||
},
|
||||
@@ -1560,7 +1560,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.MinusY"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate -Y"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the Y axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the Y axis"),
|
||||
"",
|
||||
"Shift+Left"
|
||||
},
|
||||
@@ -1568,7 +1568,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.PlusZ"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate +Z"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the Z axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the Z axis"),
|
||||
"",
|
||||
"Shift+PgUp"
|
||||
},
|
||||
@@ -1576,7 +1576,7 @@ const lcCommand gCommands[] =
|
||||
{
|
||||
QT_TRANSLATE_NOOP("Action", "Piece.Rotate.MinusZ"),
|
||||
QT_TRANSLATE_NOOP("Menu", "Rotate -Z"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects along the Z axis"),
|
||||
QT_TRANSLATE_NOOP("Status", "Rotate selected objects around the Z axis"),
|
||||
"",
|
||||
"Shift+PgDown"
|
||||
},
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_4">
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Models</b></p><p>Export all models in the project, only the current model, or the current model with the submodels it references. When several models are exported, an overall index links to their instructions.</p></string>
|
||||
<string><p><b>Models</b></p><p>Export instructions for the model and all submodels, only the model or submodel being edited, or that entry with its referenced submodels. When several entries are exported, an overall index links to their instructions.</p></string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Models</string>
|
||||
@@ -106,7 +106,7 @@
|
||||
<item>
|
||||
<widget class="QRadioButton" name="allModels">
|
||||
<property name="toolTip">
|
||||
<string>Export instructions for every model in the project.</string>
|
||||
<string>Export instructions for the model and all submodels.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>All Models</string>
|
||||
|
||||
@@ -166,7 +166,7 @@ lcResult<Project*> lcPiecesLibrary::LoadExternalProject(const QFileInfo& FileInf
|
||||
const QString Path = FileInfo.canonicalFilePath();
|
||||
|
||||
if (std::find(LoadingPaths.begin(), LoadingPaths.end(), Path) != LoadingPaths.end())
|
||||
return lcUnexpected(tr("External project include cycle at '%1'.").arg(Path));
|
||||
return lcUnexpected(tr("Circular reference between external model files at '%1'.").arg(Path));
|
||||
|
||||
LoadingPaths.push_back(Path);
|
||||
|
||||
@@ -179,7 +179,7 @@ lcResult<Project*> lcPiecesLibrary::LoadExternalProject(const QFileInfo& FileInf
|
||||
if (!Loaded)
|
||||
{
|
||||
delete ExternalProject;
|
||||
return lcUnexpected(tr("Could not load external project '%1'.").arg(FileInfo.absoluteFilePath()));
|
||||
return lcUnexpected(tr("Could not load external model file '%1'.").arg(FileInfo.absoluteFilePath()));
|
||||
}
|
||||
|
||||
return ExternalProject;
|
||||
@@ -267,7 +267,7 @@ bool lcPiecesLibrary::RemapProjectPieceData(lcPieceData* PieceData, const QStrin
|
||||
else
|
||||
{
|
||||
PieceData->DetachContainer();
|
||||
PieceData->SetFailed(tr("Could not find external project '%1'.").arg(Candidate.absoluteFilePath()));
|
||||
PieceData->SetFailed(tr("Could not find external model file '%1'.").arg(Candidate.absoluteFilePath()));
|
||||
}
|
||||
|
||||
NotifyAssetStatusChanged();
|
||||
|
||||
@@ -643,7 +643,7 @@ void lcMainWindow::CreateToolBars()
|
||||
|
||||
mStandardToolBar = addToolBar(tr("Standard"));
|
||||
mStandardToolBar->setObjectName("StandardToolbar");
|
||||
mStandardToolBar->setWhatsThis(tr("<p><b>Standard Toolbar</b></p><p>Use file controls to create, open, and save projects, and Undo or Redo to navigate edit history. Before moving or rotating objects, choose the selection rule, coordinate reference, and snapping increments from the four drop-down controls. Help > What's This? explains individual controls.</p>"));
|
||||
mStandardToolBar->setWhatsThis(tr("<p><b>Standard Toolbar</b></p><p>Use file controls to create, open, and save models, and Undo or Redo to navigate edit history. Before moving or rotating objects, choose the selection rule, coordinate reference, and snapping increments from the four drop-down controls. Help > What's This? explains individual controls.</p>"));
|
||||
mStandardToolBar->addAction(mActions[LC_FILE_NEW]);
|
||||
mStandardToolBar->addAction(mActions[LC_FILE_OPEN]);
|
||||
mStandardToolBar->addAction(mActions[LC_FILE_SAVE]);
|
||||
@@ -2821,7 +2821,7 @@ bool lcMainWindow::SaveProject(const QString& FileName)
|
||||
|
||||
if (QFileInfo(SaveFileName).suffix().toLower() == QLatin1String("lcd"))
|
||||
{
|
||||
QMessageBox::warning(this, tr("Save Project"), tr("Saving files in LCD format is no longer supported. Please use the LDR or MPD formats instead."));
|
||||
QMessageBox::warning(this, tr("Save Model"), tr("Saving files in LCD format is no longer supported. Please use the LDR or MPD formats instead."));
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -2829,7 +2829,7 @@ bool lcMainWindow::SaveProject(const QString& FileName)
|
||||
|
||||
if (!SaveResult)
|
||||
{
|
||||
QMessageBox::warning(this, tr("Save Project"), SaveResult.error());
|
||||
QMessageBox::warning(this, tr("Save Model"), SaveResult.error());
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -3509,7 +3509,7 @@ void lcModel::RemoveSelectedObjectsKeyFrames()
|
||||
Light->RemoveKeyFrames();
|
||||
|
||||
EndEditHistory();
|
||||
EndHistorySequence(tr("Remove Key Frames"));
|
||||
EndHistorySequence(tr("Remove Keyframes"));
|
||||
}
|
||||
|
||||
void lcModel::InsertControlPoint()
|
||||
@@ -4329,7 +4329,7 @@ void lcModel::SetObjectsKeyFrame(const std::vector<lcObject*>& Objects, lcObject
|
||||
if (Modified)
|
||||
{
|
||||
EndEditHistory();
|
||||
EndHistorySequence(KeyFrame ? tr("Add Key Frame") : tr("Remove Key Frame"));
|
||||
EndHistorySequence(KeyFrame ? tr("Add Keyframe") : tr("Remove Keyframe"));
|
||||
|
||||
gMainWindow->UpdateSelectedObjects(false);
|
||||
}
|
||||
@@ -5707,7 +5707,7 @@ void lcModel::InsertLightToolClicked(const lcVector3& Position, lcLightType Ligh
|
||||
break;
|
||||
|
||||
case lcLightType::Spot:
|
||||
ActionName = tr("Add Spot Light");
|
||||
ActionName = tr("Add Spotlight");
|
||||
break;
|
||||
|
||||
case lcLightType::Directional:
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<class>lcModelListDialog</class>
|
||||
<widget class="QDialog" name="lcModelListDialog">
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Submodels</b></p><p>Manage the models stored in this project. Create, rename, duplicate, delete, or reorder them, then choose OK to apply the changes. Cancel discards the list changes; files already exported remain on disk.</p><p>Drag list entries to change their order. Use Set Active to switch to the current list item when applying changes.</p></string>
|
||||
<string><p><b>Submodels</b></p><p>Manage the model and its submodels. Create, rename, duplicate, delete, or reorder entries, then choose OK to apply the changes. Cancel discards the list changes; files already exported remain on disk.</p><p>Drag list entries to change their order. Use Set Active to switch to the current list item when applying changes.</p></string>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@@ -28,7 +28,7 @@
|
||||
<string>Submodels</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Model List</b></p><p>Select one or more entries for actions such as Rename, Duplicate, Export, or Delete. Drag entries to reorder them. Double-click an entry to apply the list changes and make that model active.</p><p>Names must be unique within the project; capitalization alone does not make a name unique.</p></string>
|
||||
<string><p><b>Model List</b></p><p>Select one or more entries for actions such as Rename, Duplicate, Export, or Delete. Drag entries to reorder them. Double-click an entry to apply the list changes and make that entry active.</p><p>Model and submodel names must be unique; capitalization alone does not make a name unique.</p></string>
|
||||
</property>
|
||||
<property name="selectionMode">
|
||||
<enum>QAbstractItemView::ExtendedSelection</enum>
|
||||
@@ -40,7 +40,7 @@
|
||||
<item>
|
||||
<widget class="QPushButton" name="NewModel">
|
||||
<property name="toolTip">
|
||||
<string>Add a new empty submodel to the project.</string>
|
||||
<string>Add a new empty submodel.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>&New...</string>
|
||||
@@ -50,10 +50,10 @@
|
||||
<item>
|
||||
<widget class="QPushButton" name="DeleteModel">
|
||||
<property name="toolTip">
|
||||
<string>Remove the selected models from the project.</string>
|
||||
<string>Remove the selected entries.</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Delete Submodels</b></p><p>Remove the selected entries after confirmation. At least one model must remain. The project is changed when you accept this dialog.</p></string>
|
||||
<string><p><b>Delete Submodels</b></p><p>Remove the selected entries after confirmation. At least one entry must remain. Changes take effect when you accept this dialog.</p></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>D&elete...</string>
|
||||
@@ -99,7 +99,7 @@
|
||||
<string>Switch to the current list item when applying the changes.</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Set Active</b></p><p>When checked, accepting this dialog makes the current list item the active model for editing. When unchecked, the existing active model is retained if it remains in the project.</p></string>
|
||||
<string><p><b>Set Active</b></p><p>When checked, accepting this dialog makes the current list entry active for editing. When unchecked, the existing active entry is retained if it remains in the list.</p></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Set Active</string>
|
||||
|
||||
@@ -170,7 +170,7 @@ void lcPropertiesWidget::UpdateKeyFrameWidget(lcObjectPropertyId PropertyId)
|
||||
void lcPropertiesWidget::AddKeyFrameWidget(lcObjectPropertyId PropertyId)
|
||||
{
|
||||
lcKeyFrameWidget* Widget = new lcKeyFrameWidget(this);
|
||||
Widget->setToolTip(tr("Toggle Key Frame"));
|
||||
Widget->setToolTip(tr("Toggle Keyframe"));
|
||||
|
||||
connect(Widget, &QCheckBox::stateChanged, this, &lcPropertiesWidget::KeyFrameChanged);
|
||||
|
||||
@@ -1224,8 +1224,8 @@ void lcPropertiesWidget::CreateWidgets()
|
||||
|
||||
AddSpacing();
|
||||
|
||||
AddFloatProperty(lcObjectPropertyId::LightSpotConeAngle, tr("Cone Angle"), tr("Angle in degrees of the spot light's beam"), true, 0.0f, 179.9f);
|
||||
AddFloatProperty(lcObjectPropertyId::LightSpotPenumbraAngle, tr("Penumbra Angle"), tr("Angle in degrees over which the intensity of the spot light falls off to zero"), true, 0.0f, 179.9f);
|
||||
AddFloatProperty(lcObjectPropertyId::LightSpotConeAngle, tr("Cone Angle"), tr("Angle in degrees of the spotlight's beam"), true, 0.0f, 179.9f);
|
||||
AddFloatProperty(lcObjectPropertyId::LightSpotPenumbraAngle, tr("Penumbra Angle"), tr("Angle in degrees over which the intensity of the spotlight falls off to zero"), true, 0.0f, 179.9f);
|
||||
AddStringListProperty(lcObjectPropertyId::LightAreaShape, tr("Area Shape"), tr("The shape of the area light"), false, lcLight::GetAreaShapeStrings());
|
||||
AddFloatProperty(lcObjectPropertyId::LightAreaSizeX, tr("Size X"), tr("The width of the area light"), true, 0.0f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::LightAreaSizeY, tr("Y"), tr("The height of the area light"), true, 0.0f, FLT_MAX);
|
||||
@@ -1245,7 +1245,7 @@ void lcPropertiesWidget::CreateWidgets()
|
||||
AddFloatProperty(lcObjectPropertyId::LightPOVRayPower, tr("Power"), tr("Power of the light (multiplicative factor)"), true, 0.0f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::LightPOVRayFadeDistance, tr("Fade Distance"), tr("The distance at which the full light intensity arrives"), true, 0.0f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::LightPOVRayFadePower, tr("Fade Power"), tr("Light falloff rate"), true, 0.0f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::LightPOVRaySpotTightness, tr("Tightness"), tr("Additional exponential spot light edge softening"), true, 0.0f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::LightPOVRaySpotTightness, tr("Tightness"), tr("Additional exponential spotlight edge softening"), true, 0.0f, FLT_MAX);
|
||||
AddIntegerProperty(lcObjectPropertyId::LightPOVRayAreaGridX, tr("Grid X"), tr("Number of point sources along the X axis"), true, 1, INT_MAX);
|
||||
AddIntegerProperty(lcObjectPropertyId::LightPOVRayAreaGridY, tr("Y"), tr("Number of point sources along the Y axis"), true, 1, INT_MAX);
|
||||
|
||||
|
||||
+2
-2
@@ -43,7 +43,7 @@ QString lcLight::GetLightTypeString(lcLightType LightType)
|
||||
return QT_TRANSLATE_NOOP("Light Types", "Point Light");
|
||||
|
||||
case lcLightType::Spot:
|
||||
return QT_TRANSLATE_NOOP("Light Types", "Spot Light");
|
||||
return QT_TRANSLATE_NOOP("Light Types", "Spotlight");
|
||||
|
||||
case lcLightType::Directional:
|
||||
return QT_TRANSLATE_NOOP("Light Types", "Directional Light");
|
||||
@@ -175,7 +175,7 @@ void lcLight::CreateName(const std::vector<std::unique_ptr<lcLight>>& Lights)
|
||||
break;
|
||||
|
||||
case lcLightType::Spot:
|
||||
Prefix = QLatin1String("Spot Light ");
|
||||
Prefix = QLatin1String("Spotlight ");
|
||||
break;
|
||||
|
||||
case lcLightType::Directional:
|
||||
|
||||
+3
-3
@@ -90,13 +90,13 @@ QString lcObject::GetCheckpointString(lcObjectPropertyId PropertyId)
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light Y Size");
|
||||
|
||||
case lcObjectPropertyId::LightSpotConeAngle:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light Cone Angle");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spotlight Cone Angle");
|
||||
|
||||
case lcObjectPropertyId::LightSpotPenumbraAngle:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light Penumbra Angle");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spotlight Penumbra Angle");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRaySpotTightness:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light POV-Ray Tightness");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spotlight POV-Ray Tightness");
|
||||
|
||||
case lcObjectPropertyId::LightAreaShape:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light Shape");
|
||||
|
||||
+7
-7
@@ -327,7 +327,7 @@ QString Project::GetNewModelName(QWidget* ParentWidget, const QString& DialogTit
|
||||
if (ExistingPiece && (!CurrentModel || ExistingPiece != CurrentModel->GetPieceData()) &&
|
||||
(!ExistingPiece->IsModel() || ExistingModels.contains(Name, Qt::CaseInsensitive)))
|
||||
{
|
||||
QMessageBox::information(ParentWidget, DialogTitle, tr("A piece named '%1' already exists in this project. Please enter a unique name.").arg(Name));
|
||||
QMessageBox::information(ParentWidget, DialogTitle, tr("A piece named '%1' already exists in this model. Please enter a unique name.").arg(Name));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -411,7 +411,7 @@ void Project::ShowModelListDialog()
|
||||
|
||||
if (!FinalNames.insert(Name).second)
|
||||
{
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this project.").arg(Entry.Name));
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this model.").arg(Entry.Name));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -438,7 +438,7 @@ void Project::ShowModelListDialog()
|
||||
|
||||
if (!Vacated)
|
||||
{
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this project.").arg(Entry.Name));
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this model.").arg(Entry.Name));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -495,7 +495,7 @@ void Project::ShowModelListDialog()
|
||||
|
||||
if (!lcGetPiecesLibrary()->RenameModelPieceData(Model->GetPieceData(), Entry.Name.toLatin1().constData()))
|
||||
{
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this project.").arg(Entry.Name));
|
||||
QMessageBox::information(gMainWindow, tr("Submodels"), tr("A piece named '%1' already exists in this model.").arg(Entry.Name));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1500,7 +1500,7 @@ lcResult<void> Project::MergeInternal(const std::vector<Project*>& Sources, cons
|
||||
const auto Existing = MergedData.find(Name);
|
||||
|
||||
if (Existing != MergedData.end() && !SameEmbeddedData(*Existing->second, *Data))
|
||||
return lcUnexpected(tr("Both projects contain different embedded data named '%1'. Rename one before merging.").arg(Data->FileName));
|
||||
return lcUnexpected(tr("Both models contain different embedded data named '%1'. Rename one before merging.").arg(Data->FileName));
|
||||
|
||||
MergedData.emplace(Name, Data);
|
||||
}
|
||||
@@ -1568,7 +1568,7 @@ lcResult<void> Project::MergeInternal(const std::vector<Project*>& Sources, cons
|
||||
for (const std::map<std::string, lcPieceData*>::value_type& Entry : Source->mPieceIndex)
|
||||
{
|
||||
if (!RegisterSourcePiece(Entry.first, Entry.second))
|
||||
return lcUnexpected(tr("Both projects contain different pieces named '%1'. Rename one before merging.").arg(ConflictName));
|
||||
return lcUnexpected(tr("Both models contain different pieces named '%1'. Rename one before merging.").arg(ConflictName));
|
||||
}
|
||||
|
||||
for (const std::unique_ptr<lcModel>& Model : Source->mModels)
|
||||
@@ -1580,7 +1580,7 @@ lcResult<void> Project::MergeInternal(const std::vector<Project*>& Sources, cons
|
||||
const std::string Name = lcPiecesLibrary::NormalizePieceDataName(Piece->GetID().toLatin1().constData());
|
||||
|
||||
if (!RegisterSourcePiece(Name, Piece->mPieceData.Get()))
|
||||
return lcUnexpected(tr("Both projects contain different pieces named '%1'. Rename one before merging.").arg(ConflictName));
|
||||
return lcUnexpected(tr("Both models contain different pieces named '%1'. Rename one before merging.").arg(ConflictName));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -406,7 +406,7 @@
|
||||
<item row="11" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="RestoreTabLayout">
|
||||
<property name="toolTip">
|
||||
<string>Restore saved model tabs and view layouts when opening a project.</string>
|
||||
<string>Restore saved model tabs and view layouts when opening a model.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Restore tab layout</string>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</property>
|
||||
<widget class="QWidget" name="tabSummary">
|
||||
<property name="whatsThis">
|
||||
<string><p><b>Model Summary</b></p><p>Author, description, and comments are stored with this model when the project is saved. Measurements show its overall size.</p></string>
|
||||
<string><p><b>Model Summary</b></p><p>Author, description, and comments are stored in the model file when you save it. Measurements show its overall size.</p></string>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
|
||||
+1
-1
@@ -87,7 +87,7 @@ static void lcRegisterShellFileTypes()
|
||||
if (GetShortPathName(LongModulePath, ModulePath, _MAX_PATH) == 0)
|
||||
lstrcpy(ModulePath, LongModulePath);
|
||||
|
||||
if (RegSetValue(HKEY_CLASSES_ROOT, TEXT("LeoCAD.Project"), REG_SZ, TEXT("LeoCAD Project"), lstrlen(TEXT("LeoCAD Project")) * sizeof(TCHAR)) != ERROR_SUCCESS)
|
||||
if (RegSetValue(HKEY_CLASSES_ROOT, TEXT("LeoCAD.Project"), REG_SZ, TEXT("LeoCAD Model"), lstrlen(TEXT("LeoCAD Model")) * sizeof(TCHAR)) != ERROR_SUCCESS)
|
||||
return;
|
||||
|
||||
lstrcpy(Temp, ModulePath);
|
||||
|
||||
Reference in new issue
Block a user