20 #ifndef PartSet_WidgetFeaturePointSelector_H
21 #define PartSet_WidgetFeaturePointSelector_H
23 #include <ModelAPI_CompositeFeature.h>
24 #include <ModuleBase_WidgetShapeSelector.h>
25 #include <ModuleBase_ViewerPrs.h>
28 #include "PartSet_MouseProcessor.h"
30 #include <Quantity_Color.hxx>
75 virtual bool isValidSelection(
const std::shared_ptr<ModuleBase_ViewerPrs>& theValue);
79 void setSketcher(CompositeFeaturePtr theSketch) { mySketch = theSketch; }
82 CompositeFeaturePtr
sketch()
const {
return mySketch; }
103 virtual void setPreSelection(
const ModuleBase_ViewerPrsPtr& thePreSelected,
105 QMouseEvent* theEvent);
119 virtual void getGeomSelection(
const std::shared_ptr<ModuleBase_ViewerPrs>& thePrs,
120 ObjectPtr& theObject, GeomShapePtr& theShape);
134 Quantity_Color myHighlightColor;
135 Quantity_Color mySelectionColor;
137 std::string mySelectedObjectAttribute;
138 std::string mySelectedPointAttribute;
139 std::string myPreviewObjectAttribute;
140 std::string myPreviewPointAttribute;
143 std::shared_ptr<ModelAPI_Object> myPreviewObject;
144 std::shared_ptr<GeomAPI_Pnt2d> myPreviewPoint;
2D point defined by two coordinates
Definition: GeomAPI_Pnt2d.h:36
3D point defined by three coordinates
Definition: GeomAPI_Pnt.h:38
Attribute that contains 2D point coordinates.
Definition: GeomDataAPI_Point2D.h:37
Interface to ViewWindow object which contains 3d scene.
Definition: ModuleBase_IViewWindow.h:34
Class which provides access to Workshop object services.
Definition: ModuleBase_IWorkshop.h:48
Presentation.
Definition: ModuleBase_ViewerPrs.h:37
Customosation of ModuleBase_WidgetShapeSelector in order to provide working with sketch specific obje...
Definition: PartSet_ExternalObjectsMgr.h:43
This is an interface to allow processing of mouse events.
Definition: PartSet_MouseProcessor.h:40
virtual void mouseMoved(ModuleBase_IViewWindow *theWindow, QMouseEvent *theEvent)
Processing the mouse move event in the viewer.
Definition: PartSet_MouseProcessor.h:45
virtual void setPreSelection(const std::shared_ptr< ModuleBase_ViewerPrs > &thePreSelected, ModuleBase_IViewWindow *theWnd, QMouseEvent *theEvent)
Fill preselection used in mouseReleased.
Definition: PartSet_MouseProcessor.h:64
virtual void mouseReleased(ModuleBase_IViewWindow *theWindow, QMouseEvent *theEvent)
Processing the mouse release event in the viewer.
Definition: PartSet_MouseProcessor.h:55