]>
Commit | Line | Data |
---|---|---|
0145e89a | 1 | #ifndef ALIMUONPAINTERMASTERFRAME_H |
2 | #define ALIMUONPAINTERMASTERFRAME_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 AliMUONPainterMasterFrame | |
11 | /// \brief The main window for the offline "a la mood" display | |
12 | /// | |
13 | // Author Laurent Aphecetche, Subatech | |
14 | ||
15 | #ifndef ROOT_TGFrame | |
16 | # include <TGFrame.h> | |
17 | #endif | |
18 | #ifndef ROOT_TArrayI | |
19 | # include <TArrayI.h> | |
20 | #endif | |
21 | ||
22 | class AliMUONAttPainter; | |
23 | class AliMUONPainterMatrix; | |
24 | class AliMUONPainterMatrixFrame; | |
25 | class AliMUONAttPainterSelectorFrame; | |
26 | class AliMUONVPainter; | |
27 | class TGButton; | |
28 | class TGButtonGroup; | |
29 | class TGComboBox; | |
30 | class TGLabel; | |
31 | class TObjArray; | |
32 | ||
33 | class AliMUONPainterMasterFrame : public TGCompositeFrame | |
34 | { | |
35 | public: | |
36 | AliMUONPainterMasterFrame(const TGWindow* p, UInt_t w, UInt_t h); | |
37 | virtual ~AliMUONPainterMasterFrame(); | |
38 | ||
39 | void Backward(); | |
40 | ||
41 | void ChangeTitle(const char* newTitle); | |
42 | ||
43 | void Clicked(AliMUONVPainter* painter, Double_t* values); | |
44 | ||
45 | void ShiftClicked(AliMUONVPainter* painter, Double_t* values); | |
46 | ||
47 | void Forward(); | |
48 | ||
49 | void PainterMatrixWantToShow(AliMUONPainterMatrix* group); | |
50 | ||
51 | void Update(); | |
52 | ||
53 | void AttributesChanged(AliMUONAttPainter* newValues); | |
54 | ||
10eb3d17 | 55 | void SaveAs(const char* filename = "", Option_t* option = "") const; |
56 | ||
0145e89a | 57 | private: |
58 | /// not implemented | |
59 | AliMUONPainterMasterFrame(const AliMUONPainterMasterFrame& rhs); | |
60 | /// not implemented | |
61 | AliMUONPainterMasterFrame& operator=(const AliMUONPainterMasterFrame& rhs); | |
62 | ||
63 | void AddPainterMatrix(AliMUONPainterMatrix* group); | |
0145e89a | 64 | void MakeTopPainterMatrix(UInt_t w, UInt_t h); |
65 | void SetNavigation(Int_t i); | |
66 | void ShowPainterMatrix(AliMUONPainterMatrix* group); | |
67 | void UpdateNavigation(); | |
68 | void UpdateAttributes(const AliMUONPainterMatrix& painterMatrix); | |
69 | ||
70 | private: | |
71 | TGHorizontalFrame* fNavigationFrame; ///< top frame for navigation | |
72 | AliMUONPainterMatrixFrame* fPainterMatrixFrame; ///< main frame with painters | |
73 | ||
74 | TGButton* fBackButton; ///< navigation back | |
75 | TGButton* fForwardButton; ///< navigation forward | |
76 | TGLabel* fGroupTitle; ///< top title | |
77 | ||
78 | TArrayI fNavigation; ///< navigation "history" | |
79 | ||
80 | Int_t fCurrentNavigationPosition; ///< current position in navigation history | |
81 | ||
82 | AliMUONAttPainterSelectorFrame* fAttPainterSelectorFrame; ///< view type selection frame | |
83 | ||
84 | static const Int_t fgkBorderSize; ///< border sizes to use when placing frames | |
85 | ||
86 | ClassDef(AliMUONPainterMasterFrame,0) // Main window of display | |
87 | }; | |
88 | ||
89 | #endif |