Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TGToolTip.h
Go to the documentation of this file.
1 // @(#)root/gui:$Id$
2 // Author: Fons Rademakers 22/02/98
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TGToolTip
13 #define ROOT_TGToolTip
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TGToolTip //
19 // //
20 // A tooltip can be a one or multiple lines help text that is displayed //
21 // in a window when the mouse cursor overs a widget, without clicking //
22 // it. A small box appears with suplementary information regarding the //
23 // item being hovered over. //
24 // //
25 //////////////////////////////////////////////////////////////////////////
26 
27 #include "TGFrame.h"
28 
29 class TGLabel;
30 class TTimer;
31 class TVirtualPad;
32 class TBox;
33 
34 
35 class TGToolTip : public TGCompositeFrame {
36 
37 private:
38  TGLabel *fLabel; // help text
39  TGLayoutHints *fL1; // layout used to place text in frame
40  TTimer *fDelay; // popup delay timer
41  const TGFrame *fWindow; // frame to which tool tip is associated
42  const TVirtualPad *fPad; // pad to which tooltip is associated
43  const TBox *fBox; // box in pad to which tooltip is associated
44  Int_t fX; // X position in fWindow where to popup
45  Int_t fY; // Y position in fWindow where to popup
46 
47  TGToolTip(const TGToolTip&); // not implemented
48  TGToolTip& operator=(const TGToolTip&); // not implemented
49 
50 public:
51  TGToolTip(const TGWindow *p = 0, const TGFrame *f = 0, const char *text = 0, Long_t delayms = 350);
52  TGToolTip(const TGWindow *p, const TBox *b, const char *text, Long_t delayms);
53  TGToolTip(const TBox *b, const char *text, Long_t delayms);
54  TGToolTip(Int_t x, Int_t y, const char *text, Long_t delayms);
55  virtual ~TGToolTip();
56 
57  virtual void DrawBorder();
58 
59  Bool_t HandleTimer(TTimer *t);
60  void Show(Int_t x, Int_t y); //*SIGNAL*
61  void Hide(); //*SIGNAL*
62  void Reset(); //*SIGNAL*
63  void Reset(const TVirtualPad *parent);
64  void SetText(const char *new_text);
65  void SetPosition(Int_t x, Int_t y);
66  void SetDelay(Long_t delayms);
67  const TGString *GetText() const;
68 
69  ClassDef(TGToolTip,0) //One or multiple lines help text
70 };
71 
72 #endif