Logo ROOT  
Reference Guide
TGString.h
Go to the documentation of this file.
1 // @(#)root/gui:$Id$
2 // Author: Fons Rademakers 05/01/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_TGString
13 #define ROOT_TGString
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TGString and TGHotString //
19 // //
20 // TGString wraps a TString and adds some graphics routines like //
21 // drawing, size of string on screen depending on font, etc. //
22 // TGHotString is a string with a "hot" character unerlined. //
23 // //
24 //////////////////////////////////////////////////////////////////////////
25 
26 #include "TString.h"
27 #include "GuiTypes.h"
28 
29 
30 class TGString : public TString {
31 
32 public:
33  TGString() : TString() { }
34  TGString(const char *s) : TString(s) { }
35  TGString(Int_t number) : TString() { *this += number; }
36  TGString(const TGString *s);
37  virtual ~TGString() { }
38 
39  Int_t GetLength() const { return Length(); }
40  const char *GetString() const { return Data(); }
41  virtual void SetString(const char *s) { *this = s; }
42 
43  virtual void Draw(Drawable_t id, GContext_t gc, Int_t x, Int_t y);
44  virtual void DrawWrapped(Drawable_t id, GContext_t gc,
46  virtual Int_t GetLines(FontStruct_t font, UInt_t w);
47 
48  ClassDef(TGString,0) // Graphics string
49 };
50 
51 
52 class TGHotString : public TGString {
53 
54 protected:
55  char fHotChar; // hot character
56  Int_t fHotPos; // position of hot character
57 
58  GContext_t fLastGC; // context used during last drawing
59  Int_t fOff1; // variable used during drawing (cache)
60  Int_t fOff2; // variable used during drawing (cache)
61 
63 
64 public:
65  TGHotString(const char *s);
66 
67  Int_t GetHotChar() const { return fHotChar; }
68  Int_t GetHotPos() const { return fHotPos; }
69  virtual void Draw(Drawable_t id, GContext_t gc, Int_t x, Int_t y);
70  virtual void DrawWrapped(Drawable_t id, GContext_t gc,
71  Int_t x, Int_t y, UInt_t w, FontStruct_t font);
72 
73  ClassDef(TGHotString,0) // Graphics string with hot character
74 };
75 
76 #endif
TGString::~TGString
virtual ~TGString()
Definition: TGString.h:43
TGHotString::DrawHotChar
void DrawHotChar(Drawable_t id, GContext_t gc, Int_t x, Int_t y)
Draw the underline under the hot character.
Definition: TGString.cxx:232
TGString::DrawWrapped
virtual void DrawWrapped(Drawable_t id, GContext_t gc, Int_t x, Int_t y, UInt_t w, FontStruct_t font)
Draw a string in a column with width w.
Definition: TGString.cxx:60
TGHotString::fHotChar
char fHotChar
Definition: TGString.h:55
TString::Data
const char * Data() const
Definition: TString.h:369
FontStruct_t
Handle_t FontStruct_t
Definition: GuiTypes.h:38
TGHotString
Definition: TGString.h:52
TGHotString::GetHotChar
Int_t GetHotChar() const
Definition: TGString.h:67
TGeant4Unit::s
static constexpr double s
Definition: TGeant4SystemOfUnits.h:168
Int_t
int Int_t
Definition: RtypesCore.h:45
x
Double_t x[n]
Definition: legend1.C:17
TString::Length
Ssiz_t Length() const
Definition: TString.h:410
TGHotString::TGHotString
TGHotString(const char *s)
Create a hot string.
Definition: TGString.cxx:135
TGString::GetLines
virtual Int_t GetLines(FontStruct_t font, UInt_t w)
Get number of lines of width w the string would take using a certain font.
Definition: TGString.cxx:102
TString
Definition: TString.h:136
TString.h
Drawable_t
Handle_t Drawable_t
Definition: GuiTypes.h:30
GContext_t
Handle_t GContext_t
Definition: GuiTypes.h:37
TGHotString::fHotPos
Int_t fHotPos
Definition: TGString.h:56
TGString::GetLength
Int_t GetLength() const
Definition: TGString.h:45
TGHotString::fOff2
Int_t fOff2
Definition: TGString.h:60
TGHotString::Draw
virtual void Draw(Drawable_t id, GContext_t gc, Int_t x, Int_t y)
Draw a hot string and underline the hot character.
Definition: TGString.cxx:170
GuiTypes.h
TString::TString
TString()
TString default ctor.
Definition: TString.cxx:87
TGString::SetString
virtual void SetString(const char *s)
Definition: TGString.h:47
TGHotString::GetHotPos
Int_t GetHotPos() const
Definition: TGString.h:68
UInt_t
unsigned int UInt_t
Definition: RtypesCore.h:46
y
Double_t y[n]
Definition: legend1.C:17
TGHotString::fOff1
Int_t fOff1
Definition: TGString.h:59
unsigned int
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TGString::Draw
virtual void Draw(Drawable_t id, GContext_t gc, Int_t x, Int_t y)
Draw string.
Definition: TGString.cxx:51
TGString::GetString
const char * GetString() const
Definition: TGString.h:46
TGHotString::fLastGC
GContext_t fLastGC
Definition: TGString.h:58
TGString
Definition: TGString.h:30
TGString::TGString
TGString()
Definition: TGString.h:39
TGHotString::DrawWrapped
virtual void DrawWrapped(Drawable_t id, GContext_t gc, Int_t x, Int_t y, UInt_t w, FontStruct_t font)
Draw a hot string in a column with width w.
Definition: TGString.cxx:181
int