Logo ROOT   6.16/01
Reference Guide
TGTextBuffer.h
Go to the documentation of this file.
1// @(#)root/gui:$Id$
2// Author: Fons Rademakers 05/05/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_TGTextBuffer
13#define ROOT_TGTextBuffer
14
15
16//////////////////////////////////////////////////////////////////////////
17// //
18// TGTextBuffer //
19// //
20// A text buffer is used in several widgets, like TGTextEntry, //
21// TGFileDialog, etc. It is a little wrapper around the powerful //
22// TString class and used for sinlge line texts. For multi line texts //
23// use TGText. //
24// //
25//////////////////////////////////////////////////////////////////////////
26
27#include "TString.h"
28
29
31
32private:
34
35protected:
38 {if(this!=&tb) fBuffer=tb.fBuffer; return *this;}
39
40public:
42 TGTextBuffer(Int_t length): fBuffer(new TString(length)) { }
43 virtual ~TGTextBuffer() { delete fBuffer; }
44
45 UInt_t GetTextLength() const { return fBuffer->Length(); }
46 UInt_t GetBufferLength() const { return fBuffer->Capacity(); }
47 const char *GetString() const { return fBuffer->Data(); }
48
49 void AddText(Int_t pos, const char *text) { fBuffer->Insert(pos, text); }
50 void AddText(Int_t pos, const char *text, Int_t length) { fBuffer->Insert(pos, text, length); }
51 void RemoveText(Int_t pos, Int_t length) { fBuffer->Remove(pos, length); }
52 void Clear() { fBuffer->Remove(0, fBuffer->Length()); }
53
54 ClassDef(TGTextBuffer,0) // Text buffer used by widgets like TGTextEntry, etc.
55};
56
57#endif
int Int_t
Definition: RtypesCore.h:41
unsigned int UInt_t
Definition: RtypesCore.h:42
#define ClassDef(name, id)
Definition: Rtypes.h:324
UInt_t GetBufferLength() const
Definition: TGTextBuffer.h:46
void AddText(Int_t pos, const char *text)
Definition: TGTextBuffer.h:49
void AddText(Int_t pos, const char *text, Int_t length)
Definition: TGTextBuffer.h:50
const char * GetString() const
Definition: TGTextBuffer.h:47
void RemoveText(Int_t pos, Int_t length)
Definition: TGTextBuffer.h:51
TGTextBuffer & operator=(const TGTextBuffer &tb)
Definition: TGTextBuffer.h:37
virtual ~TGTextBuffer()
Definition: TGTextBuffer.h:43
TGTextBuffer(const TGTextBuffer &tb)
Definition: TGTextBuffer.h:36
UInt_t GetTextLength() const
Definition: TGTextBuffer.h:45
TString * fBuffer
Definition: TGTextBuffer.h:33
TGTextBuffer(Int_t length)
Definition: TGTextBuffer.h:42
void Clear()
Definition: TGTextBuffer.h:52
Basic string class.
Definition: TString.h:131
Ssiz_t Length() const
Definition: TString.h:405
TString & Insert(Ssiz_t pos, const char *s)
Definition: TString.h:644
const char * Data() const
Definition: TString.h:364
Ssiz_t Capacity() const
Definition: TString.h:352
TString & Remove(Ssiz_t pos)
Definition: TString.h:668
TText * text