188 Commits

Author SHA1 Message Date
YuSanka
252f9302ef Suppress to delete object from 3D-Scene, when ObjectList is in Editing mode 2022-11-10 11:23:31 +01:00
YuSanka
64c57faf8f Cut Improvements: Fixed Undo/Redo for cut performance
+ ObjectList: Fixed items update after Invalidate cut information
+ CutGizmo: Fixed wrong mode selection after delete object and that add new
2022-10-17 12:15:10 +02:00
YuSanka
85af9b93f1 Cut: Fixes and improvements for object's context menu
* Disable or delete some menu items, which are inappropriate for cut objects
* For cut objects added menu item "Invalidate cut info" to disconnect related cut parts of initial object
* If just one part is kept after cut performance, than don't apply a cut info for this object.

+ CutGizmo: Fixed selection of the mode
   An object has connectors         -> Connectors mode
   An object doesn't has connectors -> CutPlane mode
2022-10-07 16:26:19 +02:00
YuSanka
a8440db5ec Cut WIP:
* ObjectList & Selection: Show Connectors in the Scene, when CutConnectors Item is selected
* ObjectList: refactoring: extract the adding of volumes to the add_volumes_to_object_in_list()
* If some connector is selected on 3dScene -> select all connectors of this object
* GLGizmoScale3D : check if grabber is enabled, when do rendering
+ GLGizmoCut: refactoring : split render_cut_plane_grabbers to several functions
2022-09-30 14:07:17 +02:00
YuSanka
d1c871758b Cut WIP:
* ObjectDataViewModel: Respect to the volume id, when adding the new volume to the object
* 3mf : Save/Load info about connectors
2022-09-29 14:36:47 +02:00
YuSanka
89a7f6bdb1 Merge remote-tracking branch 'origin/ys_wx317_master' into ys_cut 2022-06-29 11:44:11 +02:00
YuSanka
ae08819a24 Using of wxWidgets 3.1.6 WIP: Linux/OSX specific fixes
OSX specific: Fixed get_mouse_position_in_control().
+ Use GetItemRect() to calculation of the position and size for Extruder selector

Linux specific:
* Use just 1.0 scale for wxBitmapComboboxes under GTK3 and gtk3
* GTK2 specific: use GTK2 doesn't suppost get_scale, so scale bitmap size form em_unit()
2022-06-27 16:40:01 +02:00
YuSanka
87e1df2fb2 Cut WIP: Lock icon is added for objects after a cut performing
* ObjectDataViewModel: Some code refactoring to update bitmap in respect to the warning mane and lock appearance
2022-04-13 13:16:29 +02:00
YuSanka
463e9ab530 Cut WIP:
+ Added CutObjectBase class which contains cut attributes for object
+ ObjectList and ManipulationPanel :
    * Disable all ManipulationEditors for solid/negative volumes of cut object
    * Disable Scale/Size ManipulationEditors for objects/instances of objects which are CutParts of initial object
+ Scale/Rotation/Move gizmos are disabled for solid/negative volumes of cut object
+ Select whole CutParts of initial object when ScaleGizmo is active
2022-04-11 11:20:00 +02:00
Lukáš Hejl
0726b46da2 Added deallocation of ObjectList::m_objects_model into the ObjectList destructor. 2022-01-28 14:43:10 +01:00
YuSanka
1955baa14b GUI_ObjectList: Get list of the loaded files before a taking of Undo/Redo snapshot
+ Fixed localization for the "Post processing" description line
2021-12-17 12:49:55 +01:00
YuSanka
c921d6f936 ObjectList: Fixed positioning of the object's part/modifiers when it's added
Use load_modifier() for everything without a respect to the type
2021-10-08 12:14:49 +02:00
YuSanka
7340488aaf ObjectList: Fixes
* Fixed update of a warning icon for multi-part object, when some part with errors was deleted
 * Fixed a crash when selecting non-Object and non-Volume item (in get_mesh_errors_info() was missed check of the obj_idx)

+ Follow-up 1cc7b4ba97 - some code refactoring:
  * fixed RepairedMeshErrors.merge()
  * get_mesh_errors_count() renamed to get_repaired_errors_count()
2021-10-06 17:24:40 +02:00
YuSanka
3e07d2e853 Changed conditions for the warning icon.
If mesh isn't manifold then always show the red "exclamation" icon
It mesh is manifold but was repaired then show the gray/white "exclamation" icon
2021-10-05 13:21:38 +02:00
Vojtech Bubnik
e533d237f9 Manifold mesh may contain self-intersections, so we want to always allow fixing the mesh.
This is a fix of a regression wrt. https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.4.0-alpha2
2021-10-04 10:39:58 +02:00
YuSanka
238e65e455 Improvements for statistics information:
+ Show 2 groups of errors: "Auto-repared" and "Remaning".
 + Use different icons for volumes with/without remaining errors
 + Fixed update of the ObjectList warnings icons after switch the color mode of a PrusaSlicer
 + Some code refactoring: Use same code for tooltips for "exclamation"-icon from an ObjectList and from a Sidebar->ObjectInfo
2021-09-21 17:20:12 +02:00
YuSanka
08e2e29afd ObjectList: Implemented interface for delete InfoItem 2021-08-17 10:05:03 +02:00
David Kocik
d735dbe147 Updated Items Info notification
Showing only when new object is added (typically loading projects).
All info in 1 notification.
2021-08-11 09:24:14 +02:00
YuSanka
1f131d130f DoubleSlider with MM-printer preset: When Object has "Paint-on segmentation", DoubleSlider has same behavior as with modifiers
+ MSW specific: Use BitmapComboBox instead of wxBitmapComboBox to DarkMode for extruder selectors
2021-08-09 13:38:48 +02:00
Vojtech Bubnik
ea5a90f08c Merge remote-tracking branch 'remotes/origin/master' into fs_QuadricEdgeCollapse 2021-08-05 17:17:18 +02:00
YuSanka
7fd9a9cf6e ObjectList: Fixed a crash during a print technology change when InfoItem is selected
+ Add "Gallery" menu Item for Advanced mode too
2021-08-04 12:35:44 +02:00
Filip Sykala
5ac2809426 Merge branch 'master' into fs_QuadricEdgeCollapse 2021-07-20 12:05:58 +02:00
YuSanka
e6c361ec5e Added "Modify Shapes Gallery" to the "Window" menu
+ Fixed a non-MSW build (added missed include)
2021-07-20 11:25:24 +02:00
Filip Sykala
86a3fd00a5 Merge branch 'master' into fs_QuadricEdgeCollapse 2021-07-19 09:18:55 +02:00
enricoturri1966
2f24971601 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2021-07-15 11:44:48 +02:00
enricoturri1966
1a64abac96 Changes in loading of modifiers from file and their positioning 2021-07-15 11:44:35 +02:00
YuSanka
b921c8b276 Added gallery to the default shapes
+ ObjectList (MSW specific): Don't change background color for Light color mode
2021-07-15 10:52:37 +02:00
YuSanka
062031a4c6 Replace with STL: Fixed update of the item name after replacing
+ OSX specific: Code refactoring for ObjectList:Rename() function
2021-07-14 09:22:03 +02:00
Oleksandra Yushchenko
d6fdf2d5c2
Modifiers Gallery (#6703)
* Added GalleryDialog

* GalleryDialog improvements:
* Added DnD functionality
* Added "Delete custom shapes" function
2021-07-12 15:20:50 +02:00
YuSanka
6f9f4f78b7 Added SimplificationDialog 2021-07-09 09:10:03 +02:00
Oleksandra Yushchenko
fd071421cb
DarkMode for MSW (#6632)
* MSW specific: Dark Mode: First implementation

* Use menu instead of NoteBook

* Implemented MessageDialog
+ Fixed DarkMode for all dialogs and ColorPicker

* MSW DarkMode: Added missed updates for the switching between modes

* MSW DarkMode: Updated all existed context menus after switching of the mode
+ Added markers for the menu item witch is related to the selected tab

* Used wxFrame instead of wxDialog for SettingsDialog
(this change allow us to use menu bar in SettingsDialog)

+ fix for #6548 - Prusa Slicer 2.3.1 not activating non-modal settings window if settings window is minimized

* Implemented "Always use Dark mode colors" preference option

* Fixes for non_MSW build

* Next fixes for non-MSW builds

* Preferences: Fixed selection of the Settings Layout for non-MSW platforms
+ Updated DarkMode for colorpickers

* Windows DarkMode next fixes

* MSWDarkMode: Suppress to use system color to the PrusaSlicer
Select "Preferences -> Use Dark color mode (experimental)" to allow dark mode for the application

* Fixed MSW build

* MSWDarkMode: Upadteed color mode for ExtruderSequenceDialog and for dialogs related to the DoubleSlider

* Implemented Auto recreation of the PrusaSlicer when color mode is changed.

* Preferences: Added option "Set settings tabs as menu items (experimental)"
2021-06-18 19:46:04 +02:00
YuSanka
7eebd56b5f Fixed DnD for "Model part" volumes inside the object
Fixed volumes order inside the object
2021-06-02 12:54:56 +02:00
Oleksandra Yushchenko
ab886e037b
Implementation for #6216
* Implementation for #6216 - Make number keys select extruder when object treeview has focus
+ deleted unused extruder_selection()
+ Fixed notification after splitting of the solid object

* Follow up 85a10268b9 - OSX implementation
+ Added shortcuts description to the "Keyboard Shortcuts" dialog

* Workaround to use "+/-" and numbers shortcuts on Linux
+ Fixed build on Linux

* OSX specific: fixed a work of keyboard accelerators from numbers on NumPad keyboard

* KBShortcutsDialog: fixed shortcuts for "Preferences" and "Show/Hide 3Dconnexion devices settings dialog, if enabled" under osx
and "Set Printable/Unprintable" and "Set extruder" under Linux
 + OSX specific: Added minimize of the application on "Cmd+M"

* Hot-fix for 6efeb9d6b4

* Removed Linux specific workaround
2021-05-11 11:02:12 +02:00
YuSanka
4fe6f726de ObjectList: Fixed update of the selection, when some gizmo in 3D-Scene is activated 2021-05-04 14:20:19 +02:00
Lukas Matena
548ceb7acc Show info about custom supports and seam in ObjectList
Slight refactoring in GLGizmosManager so it is easier to open a gizmo from the ObjectList
2021-04-19 16:10:40 +02:00
YuSanka
3a5360651d Added "Printable" menu item for multiple selection 2021-03-24 20:26:31 +01:00
Oleksandra Yushchenko
e002f0066f
Ys code refactoring (#6227)
* GUI_ObjectList code refactoring:
The MenuFactory structure contains functions related to the context menu and bitmaps used to different volume types.
The SettingsFactory structure contains functions to getting overridden options, its bundles and bitmaps used to setting categories.

Fixed bugs/crashes:
1. Add object -> Add Settings from 3D scene -> Right click on object => Part's Settings list instead of object's
   (Same behavior if something else but Object is selected in ObjectList)
2. Add settings to the part -> Change part type to the "Support Blocker/Enforcer" -> Settings disappears (it's OK) but =>
   Save Project -> Open project => Support Blocker/Enforcer has a settings
3. Add part for object -> Change type of part -> Change monitor DPI -> old type icon appears
4. Select all instances in ObjectList -> Context menu in 3D scene -> Add Settings -> Select some category -> Crash

* ObjectLayers: Fixed a crash on re-scaling, when some layer range is selected

* Fixed OSX build

* Added menu item "Split to Objects" for multipart objects

+ Fixed bug: Add 2 parts,
             Add some settings for one part
             Delete part without settings => Single part object without settings, but settings are applied for the object.

+ Next refactoring: use same menu for Plater and ObjectList
2021-03-15 10:04:45 +01:00
YuSanka
e664100bf6 SPE-1103 Added menu items for the conversation of the volumes from/to meters
Related to #4521
2021-02-10 20:34:05 +01:00
YuSanka
0331bcefd9 ObjectList: Smart update of the min height in respect to the items count.
Min 7 items and max 15 items
2020-12-30 11:00:02 +01:00
YuSanka
aaaa85c1f8 Fix of #5007 - "Reload from disk" causes objects converted to inches to revert to mm 2020-12-11 13:57:58 +01:00
YuSanka
d7412d4e54 Increase min height for the ObjectList.
Related to the FR #5162
2020-12-08 10:11:11 +01:00
Vojtech Bubnik
6fe0b09a04 Fixes "Add instance" and "Remove instance" hotkeys don't work when object is selected via de object browser #5350
Captures the +- hotkeys in the object list to add / remove an instance.
2020-12-08 08:30:15 +01:00
YuSanka
497412fcf4 Delete whole object, when all instances are selected. Fix for #5191 2020-12-04 14:19:51 +01:00
Vojtech Bubnik
54976e29bb New class ModelConfig wrapping DynamicPrintConfig and a timestamp
to help with detecting "not changed" event when taking
Undo/Redo snapshot or synchronizing with the back-end.

Converted layer height profile and supports / seam painted areas
to the same timestamp controlled structure.
2020-09-24 15:34:13 +02:00
tamasmeszaros
8541ce4060 SLA archive import will now recover the model's original position. 2020-08-27 23:14:42 +02:00
tamasmeszaros
769ee15475 Move SLA import to libslic3r with png reading using libpng
Also fix flipped object issue
2020-08-27 23:14:42 +02:00
Lukas Matena
ed98a859af Fix of #3919 (extremely wide wipe tower with 0.35mm FAST profile)
This is an excerpt from ec86d94, which was recently reverted because
the other changes from that commit broke some functionality.
2020-06-03 15:34:33 +02:00
YuSanka
9146ef2f61 Copy/Paste for the Settings and Layers in the ObjectList 2020-06-01 11:11:38 +02:00
YuSanka
ee1942e4e9 Implemented merge of the objects to the one multi-part object
+ Implemented merge of the parts to the one object. But now this function doesn't used.

+ Fixed Model::looks_like_imperial_units()
2020-05-27 11:59:43 +02:00
YuSanka
db32c1f15a Changed processing of a wxEVT_SYS_COLOUR_CHANGED event.
Only UI is updated. The application doesn't recreated now
2020-05-21 17:29:00 +02:00