LeadInOut dressup wrong direction

Hello,

i figured out two problems with the LeadInOut dressup. The two problems are marked in red and orange in the picture below.
Red marked problem:
I want to add the dressup on the start and end of the Profile operation but it does the turn in the wrong direction. I have no idea how to change this behavior. Does anybody knows a way that works? I have seen Dimitrios2 has made a custom dressup for lead in and out on which you are able to change the direction. (https://devtalk.freecad.org/t/set-a-different-entry-point-of-operations/69110/1) This would be very helpfull in my case. Unfortunately i am not able to get the posted python file to work.

Orange marked problem:
If i apply the dressup with a certain radial diameter the input value is increased by the factor of 10 if i open the dressup dialog again. If i apply these value and open it again the process continues. Sems like a bug to me.
LeadInOut_Error.png

OS: Windows 11 build 22631
Word size of FreeCAD: 64-bit
Version: 0.21.0.33668 +7 (Git)
Build type: Release
Branch: (HEAD detached at 0.21)
Hash: 41b058e2087de60dc8fef3d3e68c7d0129e13abf
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.3
Locale: German/Germany (de_DE)
Installed mods: 
  * A2plus 0.4.61
  * btl 0.9.9
  * fasteners 0.4.71
  * FeedsAndSpeeds 0.5.0
  * Lithophane
  * Manipulator 1.5.0
  * OpenDark 2023.11.27
  * QuickMeasure 2022.10.28
  * sheetmetal 0.3.12

Seems i found a first workaround for the wrong LeadInOut direction. I have to change the “Side” property of the underlying profile operation from inside to outside.
Is this an intended behavior??

I have seen @Dimitrios2 has made a custom dressup for lead in and out on which you are able to change the direction. (https://devtalk.freecad.org/t/set-a-different-entry-point-of-operations/69110/1) This would be very helpfull in my case. Unfortunately i am not able to get the posted python file to work.

Try this for 2.1 - 2.2. A couple of unnecessary changes on it but, it should work.

Copy the Op to apply it.

Thank you for your fast reply! Unfortunately i get the following pyException error message if i use your code:

Traceback (most recent call last):
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\PathPythonGui\simple_edit_panel.py", line 100, in clicked
    self.updateModel()
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\PathPythonGui\simple_edit_panel.py", line 129, in updateModel
    self.obj.Proxy.execute(self.obj)
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Dressup\Gui\LeadInOut.py", line 183, in execute
    obj.Path = self.generateLeadInOutCurve(obj)
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Dressup\Gui\LeadInOut.py", line 419, in generateLeadInOutCurve
    lastCuttingMoveIndex = self.findLastCuttingMoveIndex(obj, source)
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Dressup\Gui\LeadInOut.py", line 406, in findLastCuttingMoveIndex
    if self.isCuttingMove(obj, source[i]):
  File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Dressup\Gui\LeadInOut.py", line 401, in isCuttingMove
    and not instr.isRapid()
<class 'AttributeError'>: 'MoveStraight' object has no attribute 'isRapid'

Copy the Profile Op and add a new LeadInOut Dressup .

Yes i have done it but i get an error message. I have copied your code on the place of the original LeadInOut.py in C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Dressup\Gui
With my fix mentioned above it is also working with the original dressup code. And the change of the cutting side has no effect on the path itself. So for me in this case it is working.

Better leave it as is then.