1. Old mode, as it was always.
2. New mode, when Settings Tabs are hidden on the Plater. Use "cog" icon for the switching to the settings tabs
3. Dlg mode, when Settings Tabs are extracted to the Settings dialog. Use "cog" icon for Show or Focus the Settings Dialog
The "Collapse sidebar" toolbar appearance is set in the Preferences.
1) fts_fuzzy_match has been extended to support wchar_t for a char
type and uint16_t for an index type for the match indices.
2) fts_fuzzy_match has been extended to place a proper stopper character
into the match buffer.
3) Slicer integration now uses the fuzzy match indices for highlighting.
4) Slicer integration now correctly highlights the matched word.
5) Slicer search dialog now sorts based on match AND category.
Further modifications are planned:
1) Matching in local language vs. English: Just show the English variant
if matched in English. Don't mix the two together.
2) Matching the group or category: Continue matching the label.
3) For matches with equal match quality and category sort alphanumerically.
check for other instances during startup
send message with command line arguments if found and terminate
listen for those messages and load objects from paths in messages from them
Fix compilation on Windows
Fix array subscript out of range error in MarchingSquares
Fix normals of mesh constructed from slices
Improve performance of mesh construction from slices
Search string are synchronized between Plater and Tabs.
List with options and filtered list are in Sidebar.
All options list on tabs and Plater use this data from Sidebar
Note: SearchComboBox.cpp(hpp) was renamed to Search.cpp(hpp)
wrappers around boost::format using C++17 variadic templates,
replacing the ugly and verbose
(boost::format("template") % arg1 % arg2).str()
syntax.
The wrappers also implictely convert input parameters including the template
from wxString to UTF8.
The new format wrapper has been applied at multiple places as a start,
also some double macros _(L()) with new single macro _L().