#include "HYDROGUI_DataObject.h"
-#include <HYDROData_Image.h>
-
#include <SUIT_DataObject.h>
-
#include <TDF_Tool.hxx>
HYDROGUI_DataObject::HYDROGUI_DataObject( SUIT_DataObject* theParent,
- Handle(HYDROData_Object) theData,
+ Handle(HYDROData_Entity) theData,
const QString& theParentEntry )
: CAM_DataObject( theParent ),
LightApp_DataObject( theParent ),
myData( theData ),
- myParentEntry( theParentEntry )
+ myParentEntry( theParentEntry ),
+ myIsValid( true )
{
}
QFont aFont = LightApp_DataObject::font( theId );
if( theId == NameId )
{
- Handle(HYDROData_Image) anImage = Handle(HYDROData_Image)::DownCast( modelObject() );
- if( !anImage.IsNull() && anImage->MustBeUpdated() )
+ Handle(HYDROData_Entity) aDataObject = modelObject();
+ if( !aDataObject.IsNull() && aDataObject->IsMustBeUpdated() )
aFont.setItalic( true );
}
return aFont;
}
-QString HYDROGUI_DataObject::dataObjectEntry( const Handle(HYDROData_Object)& theObject )
+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 )
{
QString aEntryStr = QString::null;
if( !theObject.IsNull() )
{
TCollection_AsciiString aLabEntr;
TDF_Tool::Entry( theObject->Label(), aLabEntr );
- aEntryStr = HYDROGUI_DataObject::entryPrefix() + QString( aLabEntr.ToCString() );
+ aEntryStr = aLabEntr.ToCString();
+ if( theWithPrefix )
+ aEntryStr.prepend( HYDROGUI_DataObject::entryPrefix() );
}
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 )
{
return myName;
}
+
+HYDROGUI_DropTargetObject::HYDROGUI_DropTargetObject( SUIT_DataObject* theParent,
+ const QString& theName,
+ const QString& theParentEntry )
+: HYDROGUI_NamedObject( theParent, theName, theParentEntry ), CAM_DataObject( theParent )
+{
+}
+