#include <ModuleBase.h>
#include <ModuleBase_Operation.h>
-#include <ModuleBase_ViewerPrs.h>
#include <ModelAPI_Object.h>
#include <ModelAPI_CompositeFeature.h>
class ModuleBase_ISelection;
class ModuleBase_IViewer;
class ModuleBase_IWorkshop;
+class ModuleBase_ViewerPrs;
class QKeyEvent;
virtual bool isDisplayedOnStart(ObjectPtr theObject);
/// Initialisation of operation with preliminary selection
- /// \param theSelection an instance of Selection class
- /// \param theViewer a viewer to have the viewer the eye position
- virtual void initSelection(ModuleBase_ISelection* theSelection,
- ModuleBase_IViewer* theViewer);
+ /// \param thePreSelected a container of selected presentations
+ virtual void initSelection(
+ const QList<std::shared_ptr<ModuleBase_ViewerPrs>>& thePreSelected);
/// Fill internal map by preselection
/// \param theValues a list of preselection
- void setPreselection(const QList<ModuleBase_ViewerPrs>& theValues);
+ void setPreselection(const QList<std::shared_ptr<ModuleBase_ViewerPrs>>& theValues);
/// \brief Set property pane to the operation
/// \param theProp a property panel instance
virtual void setPropertyPanel(ModuleBase_IPropertyPanel* theProp);
- /// \return Currently installed property panel
+ // \return Currently installed property panel
//ModuleBase_IPropertyPanel* propertyPanel() const { return myPropertyPanel; }
/// Activates widgets by preselection if it is accepted.
- /// \param theGreeAttributeId a greed attribute id if there is in the current feature
+ /// \param theGreedAttributeId a greed attribute id if there is in the current feature
/// \return last filled widget
virtual ModuleBase_ModelWidget* activateByPreselection(const std::string& theGreedAttributeId);
/// If the operation works with feature which is sub-feature of another one
- /// then this variable has to be initialised by parent feature
+ /// then this variable has to be initialised by parent feature
/// before operation feature creating
void setParentFeature(CompositeFeaturePtr theParent);
/// Editing feature flag
bool myIsEditing;
- /// List of pre-selected object
- QList<ModuleBase_ViewerPrs> myPreSelection;
+ /// List of pre-selected object
+ QList<std::shared_ptr<ModuleBase_ViewerPrs>> myPreSelection;
/// If the operation works with feature which is sub-feature of another one
- /// then this variable has to be initialised by parent feature
+ /// then this variable has to be initialised by parent feature
/// before operation feature creating
CompositeFeaturePtr myParentFeature;