OSX specific: 1. For slNew and slDlg settings layout modes main frame could be minimized to the ridicules size.
So, set size for the Plater (as a min(default) size for the wxPanel)
2. model->Clear() invoke wxEVT_DATAVIEW_SELECTION_CHANGED. So, set prevent_list_events before this call.
3. Added a rounding for the scale value
Fix of #4261 (for the English version was called GetValue for non-created check control)
2. When "Search in English" is checked, then search in English names too.
3. Added score value at the end of option name -> [score_value]
4. Set focus to the Plater, when switch from some tab with focused field to the Plater and search window is shown.
5. For the mode, when settings are in non-modal dialog, neither dialog nor tabpanel doesn't receive wxEVT_KEY_UP event, when some field is selected.
So, like a workaround we check wxEVT_KEY_UP event for the Filed and switch between tabs if Ctrl+(1-4) was pressed
+ PreferencesDialog: fixed a control of the difference in layout modes
1. To the imGui Dialog added icons instead of settings type
2. Fixed a search trough the options with # symbol in opt_key
3. Deleted "Type" checkbox from the Search Windows and added "Search in English" checkbox (but without implementation for this moment)
Layouts:
1. Fixed a visibility of the "Switch to Settings" toolbar icon for the old layout mode
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.
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)