Commit Graph

3933 Commits

Author SHA1 Message Date
bubnikv
80b684b4b7 Fuzzy matching:
1) Handle localized and English searches as equivalent.
2) Search the whole section : group : label string, still give
   precedence to just the label.
2020-05-04 21:22:56 +02:00
bubnikv
0e87226ac9 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2020-05-04 16:18:32 +02:00
bubnikv
95cf8c2d30 Fuzzy matching of parameters in the search box:
Fix of https://github.com/forrestthewoods/lib_fts/issues/21 finally applied,
disabled CamelCase matching as we are not using CamelCase in Slicer parameters.
2020-05-04 16:18:20 +02:00
tamasmeszaros
568448fa7d Fix font size on windows with wx3.1.3 2020-05-04 15:00:17 +02:00
bubnikv
28c0880b24 ASCII folding applied over the matched string 2020-05-03 15:45:47 +02:00
bubnikv
e27c6c7928 fts_fuzzy_match fixes:
Recursive fix https://github.com/forrestthewoods/lib_fts/issues/21
End of string penalty fix https://github.com/forrestthewoods/lib_fts/issues/24

Some refactoring for succintness (based on Vojtech's taste)
2020-05-03 14:14:40 +02:00
bubnikv
07ab5c31e6 WIP Fuzzy search rework.
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.
2020-05-01 08:57:24 +02:00
Lukas Matena
377c7d3086 FDM supports gizmo is aware of the clipping plane 2020-04-30 16:57:09 +02:00
Lukas Matena
04cfd5f832 Fix updating of gizmos when instances are added
Gizmos were in fact updated after an instance was added, but before it was selected
2020-04-30 15:21:11 +02:00
bubnikv
18d08cc5cb Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2020-04-30 12:04:03 +02:00
bubnikv
cc2d33f6a0 Search: Fixed returning of a pointer to temporary. 2020-04-30 12:03:49 +02:00
Lukas Matena
bc34928ea8 Follow-up of previous commit (Slic3r::GUI::format issues)
Another missing namespace qualification caused infinite recursion
2020-04-30 11:32:17 +02:00
YuSanka
bf09d8f93a Merge remote-tracking branch 'origin/master' into ys_imperial_unit 2020-04-29 19:17:20 +02:00
YuSanka
495db2ff2e Imperial units: Implemented just for the object's position and size 2020-04-29 19:10:13 +02:00
bubnikv
2875bc685c Fixed spelling of "sidebar" 2020-04-29 15:58:57 +02:00
YuSanka
99d49a74d0 Merge remote-tracking branch 'origin/master' into ys_search 2020-04-29 14:56:31 +02:00
bubnikv
8a82e3d5be Localization fixes. 2020-04-29 14:42:43 +02:00
Lukas Matena
5b15e778ef Selection rectangle is supressed when FDM custom supports gizmo is active 2020-04-29 13:36:11 +02:00
David Kocik
d828a1e80b single slicer instance
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
2020-04-29 10:53:48 +02:00
bubnikv
4de4d765ee Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2020-04-28 19:31:18 +02:00
bubnikv
b8e02a5405 Fixed handling of fill_pattern field if not all patterns are allowed
for the internal infill.
2020-04-28 18:00:42 +02:00
YuSanka
60ae7d67e9 Implemented workaround for the mouse wheel in Search Window and Undo/Redo lists on the Plater
Workaround is used because of ImGui::GetIO().MouseWheel returns zero always!
2020-04-27 16:00:54 +02:00
YuSanka
93170870e8 Fixed update(clear) of the search_line, when search dialog was opened and closed without changing 2020-04-27 11:51:17 +02:00
Lukas Matena
8afc9338de Merge branch 'lm_fdm_custom_supports_backend' 2020-04-24 15:16:33 +02:00
YuSanka
270e815eeb Fix to the last commit f9b3f2d45e 2020-04-24 11:33:00 +02:00
YuSanka
f9b3f2d45e Search: Code cleaning
+ Reverted "Plater" tab to the Settings Notepad
2020-04-24 11:01:14 +02:00
tamasmeszaros
4f622e4541 Merge branch 'tm_sl1_import_2' 2020-04-24 08:27:49 +02:00
YuSanka
3ba4a2cf3d Fixed an update of the search list after the change of the print technology 2020-04-23 21:32:12 +02:00
YuSanka
1c1a7ed712 Collapse_toolbar: fixed draw items
+ Extended toolbar
2020-04-23 21:00:00 +02:00
tamasmeszaros
83929c2984 Add ui job for SLA import 2020-04-23 19:45:55 +02:00
tamasmeszaros
217477a9ff SLA archive import with miniz, marching square bugfixes
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
2020-04-23 19:12:07 +02:00
tamasmeszaros
247fca6d55 Initial version of sl1 import with sla::Raster refactor. 2020-04-23 19:05:32 +02:00
tamasmeszaros
6eb51a1cca Move ui jobs into separate folder 2020-04-23 18:56:09 +02:00
tamasmeszaros
728d90cb33 Separate jobs from Plater, re-add big bed workaround 2020-04-23 18:47:51 +02:00
tamasmeszaros
89d376dc35 Add min_object_distance method as free function taking ConfigBase argument 2020-04-23 18:17:37 +02:00
YuSanka
fcb85dcdc3 First implementation of the separate plater from the settings tabs
+ Added collapse_toolbar
2020-04-23 17:11:49 +02:00
YuSanka
b447b45a3e Search: Fixed "Search" menu item under OSX
+ deleted search combobox
2020-04-22 20:27:42 +02:00
tamasmeszaros
611a243447 Add question box on PrusaSlicer start to accept detected CA store..
Fix compile
2020-04-22 17:14:09 +02:00
YuSanka
07411e795c Search: Implemented SearchDialog.
Search window on Plater: set flag SelectAll for search line
2020-04-22 15:46:23 +02:00
Lukas Matena
1e12863ceb FDM custom supports gizmo now has a 'Remove all' button 2020-04-22 11:57:12 +02:00
YuSanka
9bc96bf28e Removed "Support materials" item from "Add Settings" context menu for the Layer ranges
Related to #3060 and #4100
2020-04-21 12:42:52 +02:00
YuSanka
83782e59b6 Search: Implemented "Option type" checkbox for imGui window on Plater
+ code refactoring
2020-04-20 21:54:46 +02:00
YuSanka
3b88dc2688 Search: Implemented cursor movement inside SearchWindow on Plater 2020-04-20 17:37:03 +02:00
Lukas Matena
40e4be6ede Fixed a crash in the FDM supports gizmo when the wipe tower was shown
The crash happened during showing/hiding of volumes, which historically assumed to always run in SLA mode and so did not expect to encounter the wipe tower.
2020-04-20 09:17:48 +02:00
YuSanka
b5fcc23460 ConfigWizard: fixed first column name on SLA Material page 2020-04-20 08:09:19 +02:00
Lukas Matena
2f8a5dd6f6 Merge branch 'master' into lm_fdm_custom_supports_backend 2020-04-17 14:19:16 +02:00
Lukas Matena
be9dcf0c77 Fixup of previous commit 2020-04-17 14:17:11 +02:00
Lukas Matena
9921945cbf Fixed a failing assertion in FDM supports gizmo
It was a result of attempting to render an empty GLIndexedVertexArray
2020-04-17 11:11:12 +02:00
Lukas Matena
546b0702f9 Custom supports data are saved into ModelObject and propagate to the backend
Invalidation of supports after they change is not implemented yet.
2020-04-16 16:57:46 +02:00
YuSanka
6a8d0c5d84 Search: Experiment button 2020-04-16 15:49:40 +02:00
YuSanka
ae51f280b8 Merge remote-tracking branch 'origin/master' into ys_search 2020-04-16 11:46:29 +02:00
YuSanka
287e50d091 Localization: Fix of #4035
+ Added context for "Advanced" ("Mode")
+ Updated POT
2020-04-16 11:36:41 +02:00
YuSanka
b69dfd63ca Completed a search list cleaning (deleted unused options).
+ Implemented BlinkingBitmap
+ Options, that doesn't have related controls, are highlighted near the widgets.
2020-04-16 09:59:12 +02:00
YuSanka
45147d887b Implemented cursor movement inside SearchComboPopup
+ Added checkboxes for editing of the option's name (include "Group"/"Category" or not)
+ some code refactoring
2020-04-14 17:54:15 +02:00
Lukas Matena
46ade45ced The bed texture is not shown when looking from below and FDM/SLA support gizmo is active 2020-04-14 13:18:08 +02:00
bubnikv
10110ed307 WIP: Ironing over top surfaces. 2020-04-14 11:53:28 +02:00
YuSanka
167f7cf5de Added map for save Group and Category values for each option
+ Some code refactoring in Tab (the translation of the titles moved to the OptionGroups) and Search
+ Fixed assert in fts_fuzzy_match
2020-04-13 17:55:38 +02:00
Lukas Matena
51739b70a1 FDM supports gizmo cursor size now accounts for (uniform) scaling of the mesh
Added tooltips on the sliders
2020-04-09 18:36:57 +02:00
Lukas Matena
23da5910c6 FDM supports gizmo now uses VBOs instead of immediate mode 2020-04-09 15:56:43 +02:00
YuSanka
218abacb75 Search: Set focus on search line in popup control on Plater 2020-04-08 21:03:58 +02:00
Lukas Matena
3e15d22f35 Fixed a crash when switching to Preview 2020-04-08 17:22:30 +02:00
Lukas Matena
23fbc2ff1a Alt+mouse wheel adjusts cursor size in FDM supports gizmo 2020-04-08 15:21:41 +02:00
Lukas Matena
4d8e6538e8 FDM supports gizmo - use right mouse to place support blockers 2020-04-08 14:59:53 +02:00
Lukas Matena
55c87886fa FDM supports gizmo now ignored modifiers and support enforcer/blockers 2020-04-08 12:58:48 +02:00
Lukas Matena
c32fa67523 Clipping plane can now handle multiple-part objects 2020-04-08 11:52:22 +02:00
YuSanka
8ab7956c26 Search: Added shortkey Ctrl+F on Plater 2020-04-08 09:47:33 +02:00
Lukas Matena
fe57826695 Improved the FDM supports gizmo dialog
Removed unused code
Fixed a clipping-plane related crash
Fixed a crash in hollowing gizmo when no hollowed mesh was provided
Forbid opening the gizmo when a part of an object is selected
2020-04-08 09:37:49 +02:00
YuSanka
05f4b7aa60 Search: Code cleaning 2020-04-07 20:34:09 +02:00
Lukas Matena
17811598ac Fixed obvious merge conflicts
FDM supports gizmo uses the new common data infrastructure
2020-04-07 19:44:29 +02:00
YuSanka
dcdafb6208 Implemented OnMouseMove and OnMouseClick for PopupSearchList 2020-04-07 19:09:33 +02:00
Lukas Matena
a380053a17 Merge branch 'lm_gizmos' into lm_fdm_supports_gizmo 2020-04-07 17:16:48 +02:00
Lukas Matena
1d65ce760b Removed obsolete code
Got rid of dummy header GLGizmos.hpp
2020-04-07 16:47:39 +02:00
Lukas Matena
535a27de65 Fixed crash related to ClippingPlane and incorrect handling of sla z shift in hollowing gizmo 2020-04-07 16:47:39 +02:00
Lukas Matena
c704849a7a SLA supports gizmo is now enabled and uses the new infrastructure 2020-04-07 16:47:39 +02:00
Lukas Matena
c79e90b921 SupportsClipper implementation 2020-04-07 16:47:39 +02:00
Lukas Matena
e82ead0335 InstancesHider allows to show/hide supports on demand 2020-04-07 16:47:39 +02:00
Lukas Matena
5d4014a4a5 ObjectClipper implementation, hollowing gizmo reenabled
ObjectClipper tracks active mesh (incl. possible hollowing), remembers clipping plane position and can render the cut on demand
Hollowing gizmo uses the new infrastructure
2020-04-07 16:45:16 +02:00
Lukas Matena
d9e5721cb7 Raycaster can now handle multiple volumes
This is necessary for future FDM supports gizmo. SLA objects only have one volume, so it wasn't needed until now.
2020-04-07 16:42:59 +02:00
Lukas Matena
bf734c8f68 Raycaster wrapper
The raycaster manages a MeshRaycaster object that the gizmo can ask to perform raycasts
If the hollowed mesh tracker is enabled and the hollowed mesh is newly calculated/invalidated, the raycaster automatically updates.
2020-04-07 16:40:59 +02:00
Lukas Matena
81dba7677b Hollowed mesh tracker implementation
The class tracks state of the backend calculation and if there is a hollowed/drilled mesh, it can provide a pointer to it
2020-04-07 16:40:10 +02:00
Lukas Matena
7e797eaaf8 Dependencies check in debug mode
Some common resources can depend on each other - this checks that the requirements are consistent
2020-04-07 16:39:18 +02:00
Lukas Matena
3db3a61520 InstancesHider implementation
Any gizmo can now ask for hiding all but the active instance by returning proper value from on_get_requirements
2020-04-07 16:39:06 +02:00
Lukas Matena
593e7a1546 Flattening gizmo now uses the new CommonDataPool to store pointer to active object 2020-04-07 16:35:52 +02:00
Lukas Matena
3b06332999 Common gizmos data are now handled by the CommonGizmosDataPool object 2020-04-07 16:35:52 +02:00
Lukas Matena
7c4071c541 Disabled the SLA gizmos 2020-04-07 16:35:52 +02:00
Lukas Matena
8475968025 First installation of common gizmo data pool 2020-04-07 16:35:52 +02:00
YuSanka
cd13356b6d Code cleaning 2020-04-07 16:22:03 +02:00
YuSanka
752083cbe6 Implemented blinking icon to highlight a searched field 2020-04-07 12:09:58 +02:00
YuSanka
ce2e53dbfa Added control of "Invalid numeric input" for the PointCtrl 2020-04-05 23:18:22 +02:00
YuSanka
2317437ede Next Experiment 2020-04-05 22:11:45 +02:00
YuSanka
b81c774ee5 Fixed build on OSX 2020-04-05 13:20:27 +02:00
YuSanka
17bd52342b Next experiments with search on Tabs 2020-04-04 19:25:57 +02:00
YuSanka
6faae0aa12 + Fixed clear_marked_string() 2020-04-03 14:29:57 +02:00
YuSanka
c8cf11b11b Added missed destroy for search_line 2020-04-03 12:51:20 +02:00
YuSanka
5ca6b9f8d0 Implemented SearchCtrl class instead of SearchComboBox
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)
2020-04-03 10:27:50 +02:00
YuSanka
5f31d9ed41 Merge remote-tracking branch 'origin/master' into ys_search 2020-04-01 20:23:34 +02:00
YuSanka
815989d488 The print bed is limited to 1.2m x 1.2m. (related to #2877) 2020-04-01 19:01:38 +02:00
YuSanka
67c55c7490 Added code for deactivating of search toolbar item
+ invalidated its unused callbacks.

 + ImGui::Selectable function is copied to InGuiWrapper.cpp and a little beat modified to change a label text, when item is hovered
2020-04-01 15:28:07 +02:00
enricoturri1966
f598c2d5d8 Fixed conflicts after merge with master 2020-04-01 15:06:30 +02:00
bubnikv
f4cc0ce075 Fixed the new Slic3r::GUI::format_wxstr(): The arguments were not passed. 2020-04-01 13:27:12 +02:00