src/BasicGUI/BasicGUI_EllipseDlg.h

Go to the documentation of this file.
00001 //  GEOM GEOMGUI : GUI for Geometry component
00002 //
00003 //  Copyright (C) 2003  OPEN CASCADE 
00004 // 
00005 //  This library is free software; you can redistribute it and/or 
00006 //  modify it under the terms of the GNU Lesser General Public 
00007 //  License as published by the Free Software Foundation; either 
00008 //  version 2.1 of the License. 
00009 // 
00010 //  This library is distributed in the hope that it will be useful, 
00011 //  but WITHOUT ANY WARRANTY; without even the implied warranty of 
00012 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
00013 //  Lesser General Public License for more details. 
00014 // 
00015 //  You should have received a copy of the GNU Lesser General Public 
00016 //  License along with this library; if not, write to the Free Software 
00017 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
00018 // 
00019 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00020 //
00021 //
00022 //
00023 //  File   : BasicGUI_EllipseDlg.h
00024 //  Author : Nicolas REJNERI
00025 //  Module : GEOM
00026 
00027 #ifndef BASICGUI_ELLIPSE_H
00028 #define BASICGUI_ELLIPSE_H
00029 
00030 #include "GEOMBase_Skeleton.h"
00031 #include "DlgRef_2Sel2Spin.h"
00032 
00033 #include "BasicGUI.h"
00034 
00035 #include <gp_Dir.hxx>
00036 
00037 #if defined WNT && defined WIN32 && defined SALOME_WNT_EXPORTS
00038 #define BASICGUI_WNT_EXPORT __declspec( dllexport )
00039 #else
00040 #define BASICGUI_WNT_EXPORT
00041 #endif
00042 
00043 //=================================================================================
00044 // class    : BasicGUI_EllipseDlg
00045 // purpose  :
00046 //=================================================================================
00047 class BasicGUI_EllipseDlg : public GEOMBase_Skeleton
00048 { 
00049     Q_OBJECT
00050 
00051 public:
00052     BasicGUI_EllipseDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0,
00053                const char* name = 0, bool modal = FALSE, WFlags fl = 0);
00054     ~BasicGUI_EllipseDlg();
00055 
00056 protected:
00057     // redefined from GEOMBase_Helper
00058     virtual GEOM::GEOM_IOperations_ptr createOperation();
00059     virtual bool isValid( QString& );
00060     virtual bool execute( ObjectList& objects );
00061 
00062     virtual void closeEvent( QCloseEvent* e );
00063 
00064 private :
00065     void Init();
00066     void enterEvent(QEvent* e);
00067 
00068     GEOM::GEOM_Object_var myPoint, myDir;
00069 
00070     DlgRef_2Sel2Spin* GroupPoints;
00071 
00072 private slots:
00073     void ClickOnOk();
00074     void ClickOnCancel();
00075     bool ClickOnApply();
00076 
00077     void ActivateThisDialog();
00078     void DeactivateActiveDialog();
00079     
00080     void LineEditReturnPressed();
00081     void SelectionIntoArgument();
00082     void SetEditCurrentArgument();
00083     void ValueChangedInSpinBox(double newValue);
00084 
00085 };
00086 
00087 #endif // BASICGUI_ELLIPSE_H