00001 //--------------------------------------------------------------- 00002 // Go4 Release Package v2.10-5 (build 21005) 00003 // 03-Nov-2005 00004 //--------------------------------------------------------------- 00005 // The GSI Online Offline Object Oriented (Go4) Project 00006 // Experiment Data Processing at DVEE department, GSI 00007 //--------------------------------------------------------------- 00008 // 00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI 00010 // Planckstr. 1, 64291 Darmstadt, Germany 00011 //Contact: http://go4.gsi.de 00012 //---------------------------------------------------------------- 00013 //This software can be used under the license agreements as stated 00014 //in Go4License.txt file which is part of the distribution. 00015 //---------------------------------------------------------------- 00016 #ifndef TGO4QROOTCANVAS_H 00017 #define TGO4QROOTCANVAS_H 00018 00019 #include "qtroot/interface/tqrootcanvas.h" 00020 00021 class TGo4PreviewPanel; 00022 class TPad; 00023 class TH1; 00024 class TCanvas; 00025 00026 class TGo4QRootCanvas : public TQRootCanvas { 00027 Q_OBJECT 00028 public: 00029 00030 TGo4QRootCanvas(QWidget *parent = 0, const char *name = 0 ,TCanvas *c=0); 00031 00032 virtual ~TGo4QRootCanvas(); 00033 00034 void dropEvent( QDropEvent *Event ); 00035 void dragEnterEvent( QDragEnterEvent *e ); 00036 TCanvas *GetCanvas(); 00037 void SetShowEventStatus(bool s); 00040 void InsertCanvas( TCanvas* dragedCanvas, TPad *pad, bool createoptions=true); 00041 void CreateDrawOptions( TPad* pad); 00042 bool NeedsMinmaxResize(){return needMinmaxResize;} 00043 void SetNeedsMinmaxResize(bool yes) {needMinmaxResize=yes;} 00044 00045 signals: 00046 void DropToPad(TPad *); 00047 void PadClicked(TPad *); // signal to be emitted when mouse clicks on pad 00048 00049 protected: 00050 00051 virtual bool eventFilter( QObject *, QEvent * ); 00052 void mouseDoubleClickEvent(QMouseEvent* e ); 00053 virtual void mousePressEvent( QMouseEvent *e ); 00054 void mouseMoveEvent(QMouseEvent *e); 00055 virtual void resizeEvent( QResizeEvent *e ); 00056 virtual void paintEvent( QPaintEvent *e ); 00057 00058 bool needMinmaxResize; 00059 private: 00060 TGo4PreviewPanel * fxTGo4PreviewPanel; 00061 bool fxShowEventStatus; 00062 }; 00063 00064 #endif //TGO4QROOTCANVAS_H 00065 00066 00067 00068 00069 //----------------------------END OF GO4 SOURCE FILE ---------------------