createZone( aGuiObj, aRegionZone, "", true );
}
}
+ else if ( anObjectKind == KIND_PROFILE )
+ {
+ Handle(HYDROData_Profile) aProfileObj =
+ Handle(HYDROData_Profile)::DownCast( aDataObj );
+
+ aGuiObj->setIsValid( aProfileObj->IsValid() );
+ }
}
void HYDROGUI_DataModel::buildCaseTree( SUIT_DataObject* theParent, Handle(HYDROData_CalculationCase) theCase )
#include "HYDROGUI_DataObject.h"
-#include <HYDROData_Image.h>
#include <SUIT_DataObject.h>
#include <TDF_Tool.hxx>
: CAM_DataObject( theParent ),
LightApp_DataObject( theParent ),
myData( theData ),
- myParentEntry( theParentEntry )
+ myParentEntry( theParentEntry ),
+ myIsValid( true )
{
}
return aFont;
}
+QColor HYDROGUI_DataObject::color( const ColorRole theRole, const int theId ) const
+{
+ QColor aColor;
+
+ if ( !isValid() ) {
+ switch ( theRole )
+ {
+ case Text:
+ case Foreground:
+ case Highlight:
+ aColor = QColor( 255, 0, 0 ); // red
+ break;
+ case HighlightedText:
+ // text color for the highlighted item
+ aColor = QColor( 255, 255, 255 ); // white
+ break;
+
+ default:
+ break;
+ }
+ }
+
+ if ( !aColor.isValid() ) {
+ aColor = LightApp_DataObject::color( theRole, theId );
+ }
+
+ return aColor;
+}
+
QString HYDROGUI_DataObject::dataObjectEntry( const Handle(HYDROData_Entity)& theObject,
const bool theWithPrefix )
{
return aEntryStr;
}
+void HYDROGUI_DataObject::setIsValid( const bool theIsValid )
+{
+ myIsValid = theIsValid;
+}
+
+bool HYDROGUI_DataObject::isValid() const
+{
+ return myIsValid;
+}
+
HYDROGUI_NamedObject::HYDROGUI_NamedObject( SUIT_DataObject* theParent,
const QString& theName,
const QString& theParentEntry )
*/
virtual QFont font( const int = SUIT_DataObject::NameId ) const;
+ /**
+ * Returns the object color.
+ */
+ virtual QColor color( const ColorRole, const int = NameId ) const;
+
/**
* Returns the model data object.
*/
*/
static QString dataObjectEntry( const Handle(HYDROData_Entity)& theObject,
const bool theWithPrefix = true );
+ /**
+ * Sets the validity flag: if object is valid or not.
+ * \param theIsValid is true for valid objects, false for invalid
+ */
+ void setIsValid( const bool theIsValid );
+
+ /**
+ * Returns the validity flag: is object valid or not
+ * \returns false if object is not valid
+ */
+ bool isValid() const;
protected:
Handle(HYDROData_Entity) myData; ///< object from data model
QString myParentEntry;
+ bool myIsValid; ///< indicates if the object is valid
};
/**