SLA gizmo improvements

- point can be selected
- selection can be deleted, head diameter changed
- dragging of objects is not allowed with the gizmo being on
- added a modal dialog when automatic support generator is triggered
This commit is contained in:
Lukas Matena 2019-02-11 16:29:03 +01:00
parent 0453caf266
commit ac8f9ab3dc
5 changed files with 195 additions and 140 deletions

View file

@ -132,6 +132,17 @@ wxDECLARE_EVENT(EVT_GLCANVAS_ENABLE_ACTION_BUTTONS, Event<bool>);
wxDECLARE_EVENT(EVT_GLCANVAS_UPDATE_GEOMETRY, Vec3dsEvent<2>);
wxDECLARE_EVENT(EVT_GLCANVAS_MOUSE_DRAGGING_FINISHED, SimpleEvent);
// this describes events being passed from GLCanvas3D to SlaSupport gizmo
enum class SLAGizmoEventType {
LeftDown = 1,
LeftUp,
Dragging,
Delete,
SelectAll,
ShiftUp
};
class GLCanvas3D
{
struct GCodePreviewVolumeIndex
@ -789,7 +800,7 @@ private:
void set_flattening_data(const ModelObject* model_object);
void set_sla_support_data(ModelObject* model_object, const GLCanvas3D::Selection& selection);
void mouse_event(int action, const Vec2d& mouse_position = Vec2d::Zero(), bool shift_down = false);
bool mouse_event(SLAGizmoEventType action, const Vec2d& mouse_position = Vec2d::Zero(), bool shift_down = false);
void delete_current_grabber(bool delete_all = false);
void render_current_gizmo(const Selection& selection) const;