Repository: FreeCAD/FreeCAD
File: src/Mod/Sketcher/Gui/DrawSketchHandlerOffset.h (C/C++)

Code before:
            1,
            Gui::BitmapFactory().iconFromTheme("Sketcher_OffsetIntersection")
        );

        toolWidget->setCheckboxLabel(
            WCheckbox::FirstBox,
            QApplication::translate("TaskSketcherTool_c1_offset", "Delete original geometries (U)")
        );
        toolWidget->setCheckboxLabel(
            WCheckbox::SecondBox,
            QApplication::translate("TaskSketcherTool_c2_offset", "Add offset constraint (J)")
        );
        toolWidget->setCheckboxToolTip(
            WCheckbox::FirstBox,
            QApplication::translate(
                "TaskSketcherTool_c1_offset",
                "Deletes the original geometry. If creating a single copy, this effectively "
                "performs a 'Move' operation."
            )
        );
        toolWidget->setCheckboxToolTip(
            WCheckbox::SecondBox,
            QApplication::translate(
                "TaskSketcherTool_c2_offset",
                "Adds a distance constraint with additional construction geometries that allows "
                "the distance to modify the entire offset geometry."
            )
        );
    }

    onViewParameters[OnViewParameter::First]->setLabelType(
        Gui::SoDatumLabel::DISTANCE,
        Gui::EditableDatumLabel::Function::Forced
    );
}

template<>
void DSHOffsetControllerBase::adaptDrawingToOnViewParameterChange(int labelindex, double value)
{
    switch (labelindex) {
        case OnViewParameter::First: {
            if (value == 0. && onViewParameters[OnViewParameter::First]->hasFinishedEditing) {
                // Do not accept 0, but only if user has finished editing the OVP.
                unsetOnViewParameter(onViewParameters[OnViewParameter::First].get());

                // reset offsetLengthSet so mouse can control the offset again
                handler->offsetLengthSet = false;

                Gui::NotifyUserError(
                    handler->sketchgui->getSketchObject(),
                    QT_TRANSLATE_NOOP("Notifications", "Invalid Value"),

Review comment (suggestion):
```suggestion
                "the distance to modify the entire offset geometry"

```

Code after:
            Gui::BitmapFactory().iconFromTheme("Sketcher_OffsetArc")
        );
        toolWidget->setComboboxItemIcon(
            WCombobox::FirstCombo,
            1,
            Gui::BitmapFactory().iconFromTheme("Sketcher_OffsetIntersection")
        );

        toolWidget->setCheckboxLabel(
            WCheckbox::FirstBox,
            QApplication::translate("TaskSketcherTool_c1_offset", "Delete original geometries (U)")
        );
        toolWidget->setCheckboxLabel(
            WCheckbox::SecondBox,
            QApplication::translate("TaskSketcherTool_c2_offset", "Add offset constraint (J)")
        );
        toolWidget->setCheckboxToolTip(
            WCheckbox::FirstBox,
            QApplication::translate(
                "TaskSketcherTool_c1_offset",
                "Deletes the original geometry. If creating a single copy, this effectively "
                "performs a 'Move' operation."
            )
        );
        toolWidget->setCheckboxToolTip(
            WCheckbox::SecondBox,
            QApplication::translate(
                "TaskSketcherTool_c2_offset",
                "Adds a distance constraint with additional construction geometries that allows "
                "the distance to modify the entire offset geometry"

            )
        );
    }

    onViewParameters[OnViewParameter::First]->setLabelType(
        Gui::SoDatumLabel::DISTANCE,
        Gui::EditableDatumLabel::Function::Forced
    );
}

template<>
void DSHOffsetControllerBase::adaptDrawingToOnViewParameterChange(int labelindex, double value)
{
    switch (labelindex) {
        case OnViewParameter::First: {
            if (value == 0. && onViewParameters[OnViewParameter::First]->hasFinishedEditing) {
                // Do not accept 0, but only if user has finished editing the OVP.
                unsetOnViewParameter(onViewParameters[OnViewParameter::First].get());

                // reset offsetLengthSet so mouse can control the offset again