X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROPy%2FHYDROData_Object.sip;h=6077443ee6802e7f8ee470cf7244f8964927debe;hb=f58865bdfb548ebba53ecb264f17ef357fa4c409;hp=0f128fb142466da9182e7aef6f138d24b840c01b;hpb=4ef4f1809f4602d520ddfe0f8c82630cbc2fda2f;p=modules%2Fhydro.git diff --git a/src/HYDROPy/HYDROData_Object.sip b/src/HYDROPy/HYDROData_Object.sip index 0f128fb1..6077443e 100644 --- a/src/HYDROPy/HYDROData_Object.sip +++ b/src/HYDROPy/HYDROData_Object.sip @@ -24,35 +24,56 @@ #include %End -class HYDROData_Object : HYDROData_Entity /Abstract/ +class HYDROData_Object : public HYDROData_Entity /Abstract/ { %TypeHeaderCode #include %End %ConvertToSubClassCode - if ( !Handle(HYDROData_ArtificialObject)::DownCast( sipCpp ).IsNull() ) - sipClass = sipClass_HYDROData_ArtificialObject; - else if ( !Handle(HYDROData_NaturalObject)::DownCast( sipCpp ).IsNull() ) - sipClass = sipClass_HYDROData_NaturalObject; - else - { - // HYDROData_Object sub-classes provide a unique kind ID. - switch ( sipCpp->GetKind() ) - { - case KIND_OBSTACLE: - sipClass = sipClass_HYDROData_Obstacle; - break; - - case KIND_UNKNOWN: - sipClass = sipClass_HYDROData_Object; - break; - - default: - // We don't recognise the type. - sipClass = NULL; - } - } + // HYDROData_Object sub-classes provide a unique kind ID. + switch ( sipCpp->GetKind() ) + { + case KIND_OBSTACLE: + sipClass = sipClass_HYDROData_Obstacle; + break; + + case KIND_CONFLUENCE: + sipClass = sipClass_HYDROData_Confluence; + break; + + case KIND_IMMERSIBLE_ZONE: + sipClass = sipClass_HYDROData_ImmersibleZone; + break; + + case KIND_DIGUE: + sipClass = sipClass_HYDROData_Digue; + break; + + case KIND_CHANNEL: + sipClass = sipClass_HYDROData_Channel; + break; + + case KIND_POLYLINE: + sipClass = sipClass_HYDROData_Polyline3D; + break; + + case KIND_PROFILE: + sipClass = sipClass_HYDROData_Profile; + break; + + case KIND_STREAM: + sipClass = sipClass_HYDROData_Stream; + break; + + case KIND_UNKNOWN: + sipClass = sipClass_HYDROData_Entity; + break; + + default: + // We don't recognise the type. + sipClass = NULL; + } %End public: @@ -97,6 +118,68 @@ public: */ void RemoveAltitudeObject(); + /** + * Sets filling color for zone. + */ + virtual void SetFillingColor( const QColor& theColor ); + + /** + * Returns filling color of zone. + */ + virtual QColor GetFillingColor() const; + + /** + * Sets border color for zone. + */ + virtual void SetBorderColor( const QColor& theColor ); + + /** + * Returns border color of zone. + */ + virtual QColor GetBorderColor() const; + + + /** + * Returns sequence of object groups. + */ + HYDROData_SequenceOfObjects GetGroups() const; + + /** + * Returns group data model object by it id. + */ + HYDROData_ShapesGroup GetGroup( const int theGroupId ) const [Handle_HYDROData_ShapesGroup ()]; + %MethodCode + + Handle(HYDROData_ShapesGroup) aRefGroup; + + Py_BEGIN_ALLOW_THREADS + aRefGroup = sipSelfWasArg ? sipCpp->HYDROData_Object::GetGroup( a0 ) : + sipCpp->GetGroup( a0 ); + Py_END_ALLOW_THREADS + + sipRes = (HYDROData_ShapesGroup*)createPointer( aRefGroup ); + + %End + + /** + * Returns group id by data model object. + */ + int GetGroupId( HYDROData_ShapesGroup theGroup ) const [int (const Handle_HYDROData_ShapesGroup&)]; + %MethodCode + + Handle(HYDROData_ShapesGroup) aRefGroup = + Handle(HYDROData_ShapesGroup)::DownCast( createHandle( a0 ) ); + if ( !aRefGroup.IsNull() ) + { + Py_BEGIN_ALLOW_THREADS + sipRes = sipSelfWasArg ? sipCpp->HYDROData_Object::GetGroupId( aRefGroup ) : + sipCpp->GetGroupId( aRefGroup ); + Py_END_ALLOW_THREADS + } + + %End + + protected: /**