Logo ROOT  
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-2021, 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 single line texts. For multi line texts //
23 // use TGText. //
24 // //
25 //////////////////////////////////////////////////////////////////////////
26 
27 #include "TString.h"
28 
29 
30 class TGTextBuffer {
31 
32 private:
34 
35  TGTextBuffer(const TGTextBuffer&) = delete;
36  TGTextBuffer& operator=(const TGTextBuffer&) = delete;
37 
38 public:
40  TGTextBuffer(Int_t length): fBuffer(length) {}
41  virtual ~TGTextBuffer() {}
42 
43  UInt_t GetTextLength() const { return fBuffer.Length(); }
44  UInt_t GetBufferLength() const { return fBuffer.Capacity(); }
45  const char *GetString() const { return fBuffer.Data(); }
46 
47  void AddText(Int_t pos, const char *text) { fBuffer.Insert(pos, text); }
48  void AddText(Int_t pos, const char *text, Int_t length) { fBuffer.Insert(pos, text, length); }
49  void RemoveText(Int_t pos, Int_t length) { fBuffer.Remove(pos, length); }
50  void Clear() { fBuffer.Remove(0, fBuffer.Length()); }
51 
52  ClassDef(TGTextBuffer,0) // Text buffer used by widgets like TGTextEntry, etc.
53 };
54 
55 #endif
TString::Data
const char * Data() const
Definition: TString.h:369
TGTextBuffer::GetTextLength
UInt_t GetTextLength() const
Definition: TGTextBuffer.h:43
TGTextBuffer::fBuffer
TString fBuffer
Definition: TGTextBuffer.h:33
TGTextBuffer::~TGTextBuffer
virtual ~TGTextBuffer()
Definition: TGTextBuffer.h:41
TGTextBuffer::AddText
void AddText(Int_t pos, const char *text, Int_t length)
Definition: TGTextBuffer.h:48
TString::Length
Ssiz_t Length() const
Definition: TString.h:410
TString
Basic string class.
Definition: TString.h:136
text
TText * text
Definition: entrylist_figure1.C:10
TString.h
TGTextBuffer
Definition: TGTextBuffer.h:30
TGTextBuffer::operator=
TGTextBuffer & operator=(const TGTextBuffer &)=delete
TString::Remove
TString & Remove(Ssiz_t pos)
Definition: TString.h:673
TGTextBuffer::TGTextBuffer
TGTextBuffer(const TGTextBuffer &)=delete
TString::Insert
TString & Insert(Ssiz_t pos, const char *s)
Definition: TString.h:649
TGTextBuffer::Clear
void Clear()
Definition: TGTextBuffer.h:50
unsigned int
TGTextBuffer::TGTextBuffer
TGTextBuffer(Int_t length)
Definition: TGTextBuffer.h:40
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TString::Capacity
Ssiz_t Capacity() const
Definition: TString.h:357
TGTextBuffer::TGTextBuffer
TGTextBuffer()
Definition: TGTextBuffer.h:39
TGTextBuffer::RemoveText
void RemoveText(Int_t pos, Int_t length)
Definition: TGTextBuffer.h:49
TGTextBuffer::GetBufferLength
UInt_t GetBufferLength() const
Definition: TGTextBuffer.h:44
TGTextBuffer::AddText
void AddText(Int_t pos, const char *text)
Definition: TGTextBuffer.h:47
TGTextBuffer::GetString
const char * GetString() const
Definition: TGTextBuffer.h:45
int