Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TEveTransEditor.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/eve:$Id$
0002 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TEveTransEditor
0013 #define ROOT_TEveTransEditor
0014 
0015 #include "TGedFrame.h"
0016 
0017 class TGCheckButton;
0018 class TGTextButton;
0019 
0020 class TEveTrans;
0021 class TEveGTriVecValuator;
0022 
0023 
0024 class TEveTransSubEditor : public TGVerticalFrame
0025 {
0026    TEveTransSubEditor(const TEveTransSubEditor&);            // Not implemented
0027    TEveTransSubEditor& operator=(const TEveTransSubEditor&); // Not implemented
0028 
0029 protected:
0030    TEveTrans            *fTrans;
0031 
0032    TGHorizontalFrame    *fTopHorFrame;
0033 
0034    TGCheckButton        *fUseTrans;
0035    TGCheckButton        *fEditTrans;
0036 
0037    TGVerticalFrame      *fEditTransFrame;
0038 
0039    TEveGTriVecValuator  *fPos;
0040    TEveGTriVecValuator  *fRot;
0041    TEveGTriVecValuator  *fScale;
0042 
0043    TGCheckButton        *fAutoUpdate;
0044    TGTextButton         *fUpdate;
0045 
0046 public:
0047    TEveTransSubEditor(TGWindow* p);
0048    ~TEveTransSubEditor() override {}
0049 
0050    void SetModel(TEveTrans* t);
0051    void SetTransFromData();
0052 
0053    void UseTrans();     //*SIGNAL*
0054    void TransChanged(); //*SIGNAL*
0055 
0056    void DoUseTrans();
0057    void DoEditTrans();
0058    void DoTransChanged();
0059 
0060    TEveGTriVecValuator*  GetPosValuator(){ return fPos;}
0061    TEveGTriVecValuator*  GetRotValuator(){ return fRot;}
0062    TEveGTriVecValuator*  GetScaleValuator(){ return fScale;}
0063 
0064    ClassDefOverride(TEveTransSubEditor, 0); // Sub-editor for TEveTrans class.
0065 };
0066 
0067 
0068 class TEveTransEditor : public TGedFrame
0069 {
0070 private:
0071    TEveTransEditor(const TEveTransEditor&);            // Not implemented
0072    TEveTransEditor& operator=(const TEveTransEditor&); // Not implemented
0073 
0074 protected:
0075    TEveTrans          *fM;  // Model object.
0076    TEveTransSubEditor *fSE; // Actual editor widget.
0077 
0078 public:
0079    TEveTransEditor(const TGWindow *p = nullptr, Int_t width=170, Int_t height=30, UInt_t options = kChildFrame, Pixel_t back=GetDefaultFrameBackground());
0080    ~TEveTransEditor() override {}
0081 
0082    void SetModel(TObject* obj) override;
0083 
0084    ClassDefOverride(TEveTransEditor, 0); // Editor for TEveTrans class.
0085 };
0086 
0087 #endif