X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FSUPERVGUI%2FSUPERVGUI_Information.cxx;h=0b6d8204a55bd4d7f55dca8fa3de21df026bb1b1;hb=787989820026cbd647c7bdb7159beed8e12e4944;hp=765c6bfb2d52901d3483c5908bb9e46562babcbe;hpb=08511b1f8b8a960573a076bd47e21fac8afe23b7;p=modules%2Fsuperv.git diff --git a/src/SUPERVGUI/SUPERVGUI_Information.cxx b/src/SUPERVGUI/SUPERVGUI_Information.cxx index 765c6bf..0b6d820 100644 --- a/src/SUPERVGUI/SUPERVGUI_Information.cxx +++ b/src/SUPERVGUI/SUPERVGUI_Information.cxx @@ -27,9 +27,11 @@ using namespace std; #include "SUPERVGUI_Information.h" -#include "QAD_Application.h" -#include "QAD_Desktop.h" -#include "QAD_MessageBox.h" + +#include "CAM_Application.h" +#include "SUIT_Desktop.h" +#include "SUIT_Session.h" + #include #include #include @@ -40,7 +42,7 @@ using namespace std; Constructor */ SUPERVGUI_Information::SUPERVGUI_Information(SUPERV_CNode node, bool isReadOnly) - : QDialog( QAD_Application::getDesktop(), "", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ) + : QDialog( SUIT_Session::session()->activeApplication()->desktop(), "", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ) { Trace("SUPERVGUI_Information::SUPERVGUI_Information"); setCaption( tr( "TLT_INFORMATIONS" ) ); @@ -80,7 +82,7 @@ SUPERVGUI_Information::SUPERVGUI_Information(SUPERV_CNode node, bool isReadOnly) contV = new QLineEdit( TopGroup ); contV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); contV->setMinimumSize( 200, 0 ); - contV->setReadOnly( true/*isReadOnly*/ ); + contV->setReadOnly( false/*isReadOnly*/ ); contV->setText( SUPERV::FNode::_narrow(node)->GetContainer() ); compnameL = new QLabel( tr( "COMPONENT_NAME_LBL" ), TopGroup ); @@ -88,7 +90,8 @@ SUPERVGUI_Information::SUPERVGUI_Information(SUPERV_CNode node, bool isReadOnly) compnameV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); compnameV->setMinimumSize( 200, 0 ); compnameV->setReadOnly( true/*isReadOnly*/ ); - compnameV->setText( SUPERV::FNode::_narrow(node)->GetComponentName() ); + compnameV->setText( dynamic_cast( SUIT_Session::session()->activeApplication() )-> + moduleTitle(SUPERV::FNode::_narrow(node)->GetComponentName()) ); intnameL = new QLabel( tr( "INTERFACE_NAME_LBL" ), TopGroup ); intnameV = new QLineEdit( TopGroup ); @@ -146,18 +149,31 @@ SUPERVGUI_Information::SUPERVGUI_Information(SUPERV_CNode node, bool isReadOnly) GroupButtonsLayout->setAlignment( Qt::AlignTop ); GroupButtonsLayout->setSpacing( 6 ); GroupButtonsLayout->setMargin( 11 ); - - QPushButton* okB = new QPushButton( tr( "BUT_OK" ), GroupButtons ); - QPushButton* cancelB = new QPushButton( tr( "BUT_CANCEL" ), GroupButtons ); - GroupButtonsLayout->addWidget( okB, 0, 0 ); - GroupButtonsLayout->addItem ( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); - GroupButtonsLayout->addWidget( cancelB, 0, 2 ); + // fix for PAL6904: when isReadOnly is set ON (the dataflow was imported) then only "CLOSE" button + // should be present instead of 2 buttons OK and Cancel. + QPushButton* cancelB; + if ( !isReadOnly || node->IsFactory() ) { + /*added node->IsFactory() because only for Factory nodes we ALWAYS have editable "Container" field */ + QPushButton* okB = new QPushButton( tr( "BUT_OK" ), GroupButtons ); + connect( okB, SIGNAL( clicked() ), this, SLOT( okButton() ) ); + cancelB = new QPushButton( tr( "BUT_CANCEL" ), GroupButtons ); + GroupButtonsLayout->addWidget( okB, 0, 0 ); + GroupButtonsLayout->addItem ( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); + GroupButtonsLayout->addWidget( cancelB, 0, 2 ); + } + else { + cancelB = new QPushButton( tr( "BUT_CLOSE" ), GroupButtons ); + GroupButtonsLayout->addItem ( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 0 ); + GroupButtonsLayout->addWidget( cancelB, 0, 1 ); + GroupButtonsLayout->addItem ( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 2 ); + } TopLayout->addWidget( TopGroup, 0, 0 ); TopLayout->addWidget( GroupButtons, 1, 0 ); + TopLayout->setRowStretch( 0, 1 ); + TopLayout->setRowStretch( 1, 0 ); - connect( okB, SIGNAL( clicked() ), this, SLOT( okButton() ) ); connect( cancelB, SIGNAL( clicked() ), this, SLOT( koButton() ) ); } @@ -264,10 +280,10 @@ void SUPERVGUI_Information::okButton() { Trace("SUPERVGUI_Information::okButton"); myNode->SetName( nameV->text().latin1()); myNode->SetAuthor( authV->text().latin1() ); - /*if (myNode->IsFactory()) { + if (myNode->IsFactory()) { SUPERV_FNode aFNode = SUPERV::FNode::_narrow(myNode); aFNode->SetContainer( contV->text().latin1() ); - }*/ + } myNode->SetComment( commV->text().latin1() ); accept(); }