qoccframe.h

Go to the documentation of this file.
00001 /************************************************************************************
00002 **
00003 ** This file is part of the QtOPENCASCADE Toolkit.
00004 **
00005 ** Copyright (C) 2006, 2007, 2008 QtOCC Team Members
00006 **               Peter Dolbey, Marc Britten, Stephane Routelous
00007 **               Stefan Boeykens, Pawel Dobrolowski, Walter Steffe
00008 **               Álvaro Castro Castilla, Dirk Burski, Fotis Sioutis
00009 **
00010 ** This library is free software; you can redistribute it and/or
00011 ** modify it under the terms of the GNU Lesser General Public
00012 ** License as published by the Free Software Foundation; either
00013 ** version 2.1 of the License, or (at your option) any later version.
00014 ** 
00015 ** This library is distributed in the hope that it will be useful,
00016 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
00017 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018 ** Lesser General Public License for more details.
00019 ** 
00020 ** You should have received a copy of the GNU Lesser General Public
00021 ** License along with this library; if not, write to the Free Software
00022 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
00023 **
00024 ***********************************************************************************/
00025 
00026 #ifndef QOCCVIEWFRAME_H
00027 #define QOCCVIEWFRAME_H
00028 
00029 #include <QtGui/QToolBar>
00030 #include <QtGui/QMenu>
00031 #include <QtGui/QFrame>
00032 
00033 #include "qocc.h"
00034 
00035 class QoccMainWindow;
00036 class Qocc3dWidget;
00037 class QoccController;
00038 class QVBoxLayout;
00039 class Handle_AIS_InteractiveContext;
00040 
00041 class QOCC_DECLSPEC QoccFrame : public QFrame
00042 {
00043         Q_OBJECT
00044 
00045 public:
00046 
00047         QoccFrame ( QoccController* aContext = NULL, 
00048                                 QWidget *parent = NULL, 
00049                                 Qt::WindowFlags wflags = 0 );
00050 
00051     ~QoccFrame();
00052 
00053         Qocc3dWidget*   getWidget()  { return myWidget; };
00054         QToolBar*       getToolBar() { return myToolBar; };
00055 
00056 signals:
00057 
00058 public slots:
00059         void fitArea      ();
00060         void fitAll       ();
00061         void fitExtents   ();
00062         void viewAxo      ();
00063         void viewTop      ();
00064         void viewLeft     ();
00065         void viewFront    ();
00066         void viewTopFront ();
00067 
00068 protected: // methods
00069 
00070 private: // members
00071         QoccController*  myController;
00072         Qocc3dWidget*    myWidget;
00073         
00074         QToolBar*               myToolBar;
00075         QVBoxLayout*    myLayout;
00076         QoccMainWindow* myParent;
00077 
00078         QAction* actionIdle;
00079         
00080         QAction* actionZoomGroup;
00081         QMenu*   popupZoomGroup;
00082         QAction* actionFitExtents;
00083         QAction* actionFitArea;
00084         QAction* actionFitAll;
00085 
00086         QAction* actionViewGroup;
00087         QMenu*   popupViewGroup;
00088         QAction* actionViewTop;
00089         QAction* actionViewFront;
00090         QAction* actionViewTopFront;
00091         QAction* actionViewLeft;
00092         QAction* actionViewAxo;
00093 
00094 private: // methods
00095         void setToolbarActions( void );
00096 
00097         void createActions( void );
00098 
00099         void connectActions( void );
00100         void disconnectActions( void );
00101 
00102         void connectParent( void );
00103         void disconnectParent( void );
00104 
00105         void createZoomGroup( void );
00106         void createViewGroup( void );
00107 
00108         void invokeAction( QAction* group, QAction* action, const char* signal );
00109 
00110 public:
00111 
00112 };
00113 
00114 #endif // QOCCVIEWFRAME_H

Generated on Sat Feb 23 21:22:17 2008 for QtGEOM by  doxygen 1.4.7