X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_OverconstraintListener.h;h=56f4a5e5279d72c339fd307cc04daf8c168b2b88;hb=23190be3e855ee23fdae8cd7edfab2d6339d427a;hp=1f0e8f01c7ca3347c5fe5fcc49393dce4819e72d;hpb=4bf4215c643280688f98cfbe545daf837d7bda1f;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_OverconstraintListener.h b/src/PartSet/PartSet_OverconstraintListener.h index 1f0e8f01c..56f4a5e52 100755 --- a/src/PartSet/PartSet_OverconstraintListener.h +++ b/src/PartSet/PartSet_OverconstraintListener.h @@ -1,9 +1,22 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D - -// File: PartSet_OverconstraintListener.h -// Created: 8 Feb 2016 -// Author: Natalia ERMOLAEVA - +// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// 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 +// +// See http://www.salome-platform.org/ or +// email : webmaster.salome@opencascade.com +// #ifndef PartSet_OverconstraintListener_H #define PartSet_OverconstraintListener_H @@ -12,7 +25,7 @@ #include class ModuleBase_IWorkshop; -class XGUI_Workshop; +class PartSet_Module; #include @@ -33,19 +46,15 @@ public: virtual ~PartSet_OverconstraintListener() {}; - // Set erroneous color for the presentation of object if the object is in the conflicting list - // \param theObject an object to be settled - // \param theUpdateViewer a boolean state whether the current viewer should be updated - //bool customizeObject(ObjectPtr theObject, const bool theUpdateViewer); + /// If active state is changed, update fully defined state and sketch sub-entities color + /// \param theActive a state + void setActive(const bool& theActive); /// Returns true if the object belongs to internal container of conflicting objects /// \param theObject an object to be checked - /// \return boolean result - bool isConflictingObject(const ObjectPtr& theObject); - - /// Returns values of conflicting color /// \param theColor the output container to be filled in [red, green, blue] values - void getConflictingColor(std::vector& theColor); + /// \return boolean result + void getCustomColor(const ObjectPtr& theObject, std::vector& theColor); /// Redefinition of Events_Listener method virtual void processEvent(const std::shared_ptr& theMessage); @@ -66,8 +75,8 @@ protected: void redisplayObjects(const std::set& theObjects); private: - /// Returns workshop - XGUI_Workshop* workshop() const; + /// Returns module + PartSet_Module* module() const; #ifdef _DEBUG /// Unite objects in one string information @@ -77,8 +86,10 @@ private: #endif private: - std::set myConflictingObjects; ModuleBase_IWorkshop* myWorkshop; + bool myIsActive; /// state if sketch is active + std::set myConflictingObjects; + bool myIsFullyConstrained; /// state if Solver is fully constrained, DOF = 0 }; #endif