-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
#include <SUIT_Session.h>
#include <SUIT_Desktop.h>
+#include <QButtonGroup>
+
#include <Aspect_PolygonOffsetMode.hxx>
+#include <Basics_OCCTVersion.hxx>
+
+#include <QButtonGroup>
+
//=================================================================================
// function : Constructor
// purpose :
SLOT( OnStartSelection( const QList<TopAbs_ShapeEnum>& ) ) );
connect( myDiameterArgs, SIGNAL( StartSelection( const QList<TopAbs_ShapeEnum>& ) ),
SLOT( OnStartSelection( const QList<TopAbs_ShapeEnum>& ) ) );
- connect( myAngleArgs, SIGNAL( StartSelection( const QList<TopAbs_ShapeEnum>& ) ),
+ connect( myAngleArgs, SIGNAL( StartSelection( const QList<TopAbs_ShapeEnum>& ) ),
SLOT( OnStartSelection( const QList<TopAbs_ShapeEnum>& ) ) );
connect( myLengthArgs, SIGNAL( StopSelection() ), SLOT( OnStopSelection() ) );
// construct main layout
QVBoxLayout* aCustomWidLayout = new QVBoxLayout( centralWidget() );
- aCustomWidLayout->setMargin( 0 );
+ aCustomWidLayout->setMargin( 0 );
aCustomWidLayout->setSpacing( 6 );
aCustomWidLayout->addWidget( aGroupArgs );
//=================================================================================
// function : ActiveArgs
-// purpose :
+// purpose :
//=================================================================================
MeasureGUI_CreateDimensionDlg::BaseSelectorPane* MeasureGUI_CreateDimensionDlg::ActiveArgs()
{
//=================================================================================
// function : GenerateName
-// purpose :
+// purpose :
//=================================================================================
QString MeasureGUI_CreateDimensionDlg::GenerateName( const QString& thePrefix )
{
//=================================================================================
// function : ConstructTypeChanged
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::ConstructTypeChanged( int theType )
{
//=================================================================================
// function : OnArgumentTabChanged
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::OnArgumentTabChanged()
{
return;
}
- GEOM::GeomObjPtr aSelectedMain =
- !aSelected->IsMainShape()
- ? aSelected->GetMainShape()
+ GEOM::GeomObjPtr aSelectedMain =
+ !aSelected->IsMainShape()
+ ? aSelected->GetMainShape()
: GEOM::GeomObjPtr();
if ( myParentObj != aSelected && myParentObj != aSelectedMain )
//=================================================================================
// function : ClickOnOk
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::ClickOnOk()
{
//=================================================================================
// function : ClickOnApply
-// purpose :
+// purpose :
//=================================================================================
bool MeasureGUI_CreateDimensionDlg::ClickOnApply()
{
//=================================================================================
// function : StartLocalEditing
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::StartLocalEditing()
{
aViewer3d->AddZLayer( myEditingLayer );
- anAISContext->OpenLocalContext( Standard_False, Standard_False );
+#if OCC_VERSION_LARGE >= 0x070400ff
+ anAISContext->Load( myDimension, PrsDim_DimensionSelectionMode_All );
+ anAISContext->SetZLayer( myDimension, myEditingLayer );
+ anAISContext->Activate( myDimension, PrsDim_DimensionSelectionMode_Line );
+ anAISContext->Activate( myDimension, PrsDim_DimensionSelectionMode_Text );
+#else
anAISContext->Load( myDimension, AIS_DSM_All );
anAISContext->SetZLayer( myDimension, myEditingLayer );
anAISContext->Activate( myDimension, AIS_DSM_Line );
anAISContext->Activate( myDimension, AIS_DSM_Text );
+#endif
anAISContext->Redisplay( myDimension , Standard_True );
}
//=================================================================================
// function : StopLocalEditing
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::StopLocalEditing()
{
Handle(V3d_Viewer) aViewer3d = myEditingViewer->getViewer3d();
aViewer3d->RemoveZLayer( myEditingLayer );
- anAISContext->CloseLocalContext( Standard_True );
+ anAISContext->Deactivate();
+ anAISContext->Activate(0);
myEditingViewer = NULL;
}
//=================================================================================
// function : Init
-// purpose :
+// purpose :
//=================================================================================
void MeasureGUI_CreateDimensionDlg::Init()
{
//=================================================================================
// function : CreateDimensionPrs
-// purpose :
+// purpose :
//=================================================================================
Handle(AIS_Dimension) MeasureGUI_CreateDimensionDlg::CreateDimension()
{
if ( aUnitsAngle == "deg" )
{
aDimensionIO->SetSpecialSymbol(0xB0);
+#if OCC_VERSION_LARGE >= 0x070400ff
+ aDimensionIO->SetDisplaySpecialSymbol( isUnitsShown ? PrsDim_DisplaySpecialSymbol_After :
+ PrsDim_DisplaySpecialSymbol_No );
+#else
aDimensionIO->SetDisplaySpecialSymbol( isUnitsShown ? AIS_DSS_After : AIS_DSS_No );
+#endif
aStyle->MakeUnitsDisplayed(Standard_False);
}
else
{
+#if OCC_VERSION_LARGE >= 0x070400ff
+ aDimensionIO->SetDisplaySpecialSymbol(PrsDim_DisplaySpecialSymbol_No);
+#else
aDimensionIO->SetDisplaySpecialSymbol(AIS_DSS_No);
+#endif
aStyle->MakeUnitsDisplayed( (Standard_Boolean) isUnitsShown );
}
}
//=================================================================================
// class : AddDimensionToOwner
-// purpose :
+// purpose :
//=================================================================================
bool MeasureGUI_CreateDimensionDlg::AddDimensionToOwner()
{
//=================================================================================
// function : BaseSelectorPane::GetSelection
-// purpose :
+// purpose :
//=================================================================================
GEOM::GeomObjPtr MeasureGUI_CreateDimensionDlg::BaseSelectorPane::GetSelection( QLineEdit* theSelector ) const
{