First big commit of the mchview program and its accompanying library,
[u/mrichter/AliRoot.git] / MUON / AliMUONAttPainterSelectorFrame.h
1 #ifndef ALIMUONATTPAINTERSELECTORFRAME_H
2 #define ALIMUONATTPAINTERSELECTORFRAME_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice                               */
6
7 // $Id$
8
9 /// \ingroup graphics
10 /// \class AliMUONAttPainterSelectorFrame
11 /// \brief Widget to select the painter(s) view type
12 /// 
13 // Author Laurent Aphecetche, Subatech
14
15 #ifndef ROOT_TGFrame
16 #  include "TGFrame.h"
17 #endif
18 #ifndef ROOT_RQ_OBJECT
19 #   include <RQ_OBJECT.h>
20 #endif
21 #ifndef ALIMUONATTPAINTER_H
22 #  include "AliMUONAttPainter.h"
23 #endif
24
25 class TGButtonGroup;
26
27 class AliMUONAttPainterSelectorFrame : public TGHorizontalFrame
28 {
29   RQ_OBJECT("AliMUONAttPainterSelectorFrame")
30   
31 public:
32   AliMUONAttPainterSelectorFrame(TGWindow* p=0x0, UInt_t w=1, UInt_t h=1);
33   virtual ~AliMUONAttPainterSelectorFrame();
34   
35   void Update(const AliMUONAttPainter& att);
36   
37   void Clicked(AliMUONAttPainter* newValues); // *SIGNAL*
38   
39   void CathodeClicked(Int_t buttonId);
40   
41   void PlaneClicked(Int_t buttonId);
42   
43   void ViewClicked(Int_t buttonId);
44   
45 private:
46   /// Not implemented
47   AliMUONAttPainterSelectorFrame(const AliMUONAttPainterSelectorFrame& rhs);
48   /// Not implemented
49   AliMUONAttPainterSelectorFrame& operator=(const AliMUONAttPainterSelectorFrame& rhs);
50   
51 private:
52   
53   TGButtonGroup* fCathode; ///< cathode selection buttons
54   TGButtonGroup* fPlane;   ///< plane selection buttons
55   TGButtonGroup* fViewPoint; ///< viewpoint selection buttons
56   
57   AliMUONAttPainter fAttributes; ///< attributes
58   
59   ClassDef(AliMUONAttPainterSelectorFrame,1) // Widget to select painter view type
60 };
61
62 #endif