Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
/home/iurt/rpm/BUILD/canorus-0.7.R1002/src/widgets/viewportcontainer.h
Go to the documentation of this file.
00001 
00008 #ifndef SCROLLWIDGET_H
00009 #define SCROLLWIDGET_H
00010 
00011 #include <QSplitter>
00012 #include <QHash>
00013 
00014 class CAViewPort;
00015 class CASheet;
00016 
00017 class CAViewPortContainer : public QSplitter {
00018 Q_OBJECT
00019 
00020 public:
00021         CAViewPortContainer( QWidget *p );
00022         ~CAViewPortContainer();
00023         
00024         void addViewPort( CAViewPort *v, QSplitter *s=0 );
00025         void removeViewPort( CAViewPort *v );
00026         CAViewPort* splitHorizontally( CAViewPort *v = 0 );
00027         CAViewPort* splitVertically( CAViewPort *v = 0 );
00028         
00029         CAViewPort* unsplit( CAViewPort *v = 0 );               
00030         QList<CAViewPort*> unsplitAll();
00031         
00032         inline bool contains(CAViewPort* v) { return _viewPortMap.contains(v); } 
00033         inline QList<CAViewPort*> viewPortList() { return _viewPortMap.keys(); }
00034         
00035         inline void setCurrentViewPort( CAViewPort *v ) { _currentViewPort = v; }               
00036         inline CAViewPort* currentViewPort() { return _currentViewPort; }
00037         
00038 private:
00039         QHash<CAViewPort*, QSplitter*> _viewPortMap;
00040         CAViewPort *_currentViewPort;
00041         CASheet *_sheet;
00042 };
00043 #endif