When adding tool controllers from the job dialog, it will now
try to match the toolbit file with the currently selected library
and add use the toolnumber from there. If no match is found,
it will autoincrement from the existing tool controllers
in the job
Identified by MLampert. If multiple faces are selected at varying Z-heights, the `combineConnectedShapes()` method fails to connect them due to offset Z-heights. This fix places all input faces for that method into the same working plane.
When profiling open edges, the user must currently select a top edge and then set the Final Depth manually to a value below the selected edge(s).
This fix provides the user with feedback for the empty path generated.
Fix error when working with selections containing edges and faces. This fix effectively processes edges and only passes faces on to next processing step. This simplifies the code a bit and changes some `obj.Base` references to `otherBase` to improve readability.
Path: Improve `obj.Base` reading and processing
`obj.Base` is first read in `self._processEdges()`. All edges are identified and processed there. Remaining features are saved in `remainingObjBaseFeatures` to be processed in the next section of the Profile code.
Path: Change `if` to `elif`
This fixes error when attempting to profile loop of vertical faces, thus maintaining original Profile Faces behavior by default for vertical looped face set.