-// Copyright (C) 2014-2017 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// See http://www.salome-platform.org/ or
-// email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
#ifndef MODULEBASE_WIDGETMULTISELECTOR_H_
class QWidget;
class QCheckBox;
-//class QComboBox;
+class QPushButton;
+class QVBoxLayout;
class ModuleBase_ListView;
class ModuleBase_IWorkshop;
class ModuleBase_ChoiceCtrl;
+class ModuleBase_FilterStarter;
/**
* \ingroup GUI
* \code
* <multi_selector id="group_list"
* tooltip="Select a set of objects"
-* type_choice="Vertices Edges Faces Solids" />
+* shape_types="Vertices Edges Faces Solids" />
* \endcode
* It uses following parameters:
* - id - is a name of corresponded attribute
* - tooltip - a tooltip for the widget
-* - type_choice - list of expected shape types.
+* - shape_types - list of expected shape types.
*/
class MODULEBASE_EXPORT ModuleBase_WidgetMultiSelector : public ModuleBase_WidgetSelector
{
/// The slot is called when user press Ok or OkPlus buttons in the parent property panel
virtual void onFeatureAccepted();
+ /// Returns True if data of its feature was modified during operation
+ virtual bool isModified() const;
+
+ virtual void setReadOnly(bool isReadOnly);
+
public slots:
/// Slot is called on selection type changed
void onSelectionTypeChanged();
void onSameTopology(bool theOn);
+ void onShowOnly(bool);
+
protected:
/// Returns true if the event is processed. The default implementation is empty, returns false.
virtual bool processDelete();
virtual QIntList shapeTypes() const;
/// Set current shape type for selection
- void setCurrentShapeType(const int theShapeType);
+ void setCurrentShapeType(const QString& theShapeType);
/// Return the attribute values wrapped in a list of viewer presentations
/// \return a list of viewer presentations, which contains an attribute result and
bool myIsFirst;
std::string myDefMode;
+ QVBoxLayout* myMainLayout;
QCheckBox* myGeomCheck;
+ ModuleBase_FilterStarter* myFiltersWgt;
+ QPushButton* myShowOnlyBtn;
+
+ QObjectPtrList myVisibleObjects;
+ QStringList myAllowedObjects;
+ QStringList myTmpAllowed;
+ std::string myUseFilters;
};
#endif /* MODULEBASE_WIDGETFILESELECTOR_H_ */