1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: PartSet_WidgetMultiSelectorComposite.h
4 // Created: 17 Mar 2016
5 // Author: Natalia Ermolaeva
7 #ifndef PartSet_WidgetMultiSelectorComposite_H
8 #define PartSet_WidgetMultiSelectorComposite_H
12 #include <ModuleBase_WidgetMultiSelector.h>
14 #include <ModelAPI_CompositeFeature.h>
18 * Customosation of ModuleBase_WidgetMultiSelector in order to provide
19 * working with sketch specific objects and creation of external objects.
21 class PARTSET_EXPORT PartSet_WidgetMultiSelectorComposite: public ModuleBase_WidgetMultiSelector
26 /// \param theParent the parent object
27 /// \param theWorkshop instance of workshop interface
28 /// \param theData the widget configuation. The attribute of the model widget is obtained from
29 PartSet_WidgetMultiSelectorComposite(QWidget* theParent, ModuleBase_IWorkshop* theWorkshop,
30 const Config_WidgetAPI* theData);
32 virtual ~PartSet_WidgetMultiSelectorComposite();
34 /// Set focus to the first control of the current widget. The focus policy of the control is checked.
35 /// If the widget has the NonFocus focus policy, it is skipped.
36 /// \return the state whether the widget can accept the focus
37 virtual bool focusTo();
39 /// Editing mode depends on mode of current operation. This value is defined by it.
40 virtual void setEditingMode(bool isEditing);
43 /// Returns true if the current composite feature contains at least one sub-object
44 /// \return boolean value
45 bool hasSubObjects() const;
47 /// Disable controls by setting them focus policy NoFocus and disabling them
48 void disableControls();