X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPrimitiveGUI%2FPrimitiveGUI.cxx;h=b6c831abac0f6dcfee72d99060251ebc0aa4ecc4;hb=c20be9052a89947a36ccc6693d6723214a31aa1a;hp=0304e194f9944096710fbb908ea178b41bf6b9ad;hpb=d3dd282390888d7dc091ba2c2ffe7923bd7458e6;p=modules%2Fgeom.git diff --git a/src/PrimitiveGUI/PrimitiveGUI.cxx b/src/PrimitiveGUI/PrimitiveGUI.cxx index 0304e194f..b6c831aba 100644 --- a/src/PrimitiveGUI/PrimitiveGUI.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI.cxx @@ -1,70 +1,51 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : PrimitiveGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - -using namespace std; #include "PrimitiveGUI.h" -#include "GeometryGUI.h" -#include "QAD_Application.h" -#include "QAD_Desktop.h" +#include -#include "SALOMEGUI_QtCatchCorbaException.hxx" +#include +#include #include "PrimitiveGUI_BoxDlg.h" // Method BOX #include "PrimitiveGUI_CylinderDlg.h" // Method CYLINDER #include "PrimitiveGUI_SphereDlg.h" // Method SPHERE #include "PrimitiveGUI_TorusDlg.h" // Method TORUS #include "PrimitiveGUI_ConeDlg.h" // Method CONE - -PrimitiveGUI* PrimitiveGUI::myGUIObject = 0; - -//======================================================================= -// function : GetPrimitiveGUI() -// purpose : Get the only PrimitiveGUI object [ static ] -//======================================================================= -PrimitiveGUI* PrimitiveGUI::GetPrimitiveGUI() -{ - if ( myGUIObject == 0 ) { - // init PrimitiveGUI only once - myGUIObject = new PrimitiveGUI(); - } - return myGUIObject; -} +#include "PrimitiveGUI_FaceDlg.h" // Method FACE +#include "PrimitiveGUI_DiskDlg.h" // Method DISK //======================================================================= // function : PrimitiveGUI() // purpose : Constructor //======================================================================= -PrimitiveGUI::PrimitiveGUI() : GEOMGUI() +PrimitiveGUI::PrimitiveGUI( GeometryGUI* parent ) : GEOMGUI( parent ) { } - //======================================================================= // function : ~PrimitiveGUI // purpose : Destructor @@ -73,67 +54,62 @@ PrimitiveGUI::~PrimitiveGUI() { } - //======================================================================= // function : OnGUIEvent() // purpose : //======================================================================= -bool PrimitiveGUI::OnGUIEvent(int theCommandID, QAD_Desktop* parent) +bool PrimitiveGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { - PrimitiveGUI* aPrimitiveGUI = GetPrimitiveGUI(); - GeometryGUI::GetGeomGUI()->EmitSignalDeactivateDialog(); - SALOME_Selection* Sel = SALOME_Selection::Selection(QAD_Application::getDesktop()->getActiveStudy()->getSelection()); - + SalomeApp_Application* app = getGeometryGUI()->getApp(); + if ( !app ) return false; + + getGeometryGUI()->EmitSignalDeactivateDialog(); + QDialog* aDlg = NULL; - switch (theCommandID) - { - case 4021: // BOX - { - aDlg = new PrimitiveGUI_BoxDlg(parent, "", Sel); - break; - } - case 4022: // CYLINDER - { - aDlg = new PrimitiveGUI_CylinderDlg(parent, "", Sel); - break; - } - case 4023: // SPHERE - { - aDlg = new PrimitiveGUI_SphereDlg(parent, "", Sel); - break; - } - case 4024: // TORUS - { - aDlg = new PrimitiveGUI_TorusDlg(parent, "", Sel); - break; - } - case 4025: // CONE - { - aDlg = new PrimitiveGUI_ConeDlg(parent, "", Sel); - break; - } - default: - { - parent->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); - break; - } - } + switch ( theCommandID ) { + case 4021: // BOX + aDlg = new PrimitiveGUI_BoxDlg( getGeometryGUI(), parent ); + break; + case 4022: // CYLINDER + aDlg = new PrimitiveGUI_CylinderDlg( getGeometryGUI(), parent ); + break; + case 4023: // SPHERE + aDlg = new PrimitiveGUI_SphereDlg( getGeometryGUI(), parent ); + break; + case 4024: // TORUS + aDlg = new PrimitiveGUI_TorusDlg( getGeometryGUI(), parent ); + break; + case 4025: // CONE + aDlg = new PrimitiveGUI_ConeDlg( getGeometryGUI(), parent); + break; + case 4026: // FACE + aDlg = new PrimitiveGUI_FaceDlg( getGeometryGUI(), parent); + break; + case 4027: // DISK + aDlg = new PrimitiveGUI_DiskDlg( getGeometryGUI(), parent); + break; + default: + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; + } if ( aDlg != NULL ) aDlg->show(); - + return true; } - //===================================================================================== // EXPORTED METHODS //===================================================================================== extern "C" { - GEOMGUI* GetLibGUI() +#ifdef WIN32 + __declspec( dllexport ) +#endif + GEOMGUI* GetLibGUI( GeometryGUI* parent ) { - return PrimitiveGUI::GetPrimitiveGUI(); + return new PrimitiveGUI( parent ); } }