// @(#)root/gui:$Name: $:$Id: TGTextBuffer.h,v 1.1.1.1 2000/05/16 17:00:42 rdm Exp $ // Author: Fons Rademakers 05/05/98 /************************************************************************* * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * All rights reserved. * * * * For the licensing terms see $ROOTSYS/LICENSE. * * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ #ifndef ROOT_TGTextBuffer #define ROOT_TGTextBuffer ////////////////////////////////////////////////////////////////////////// // // // TGTextBuffer // // // // A text buffer is used in several widgets, like TGTextEntry, // // TGFileDialog, etc. It is a little wrapper around the powerful // // TString class and used for sinlge line texts. For multi line texts // // use TGText. // // // ////////////////////////////////////////////////////////////////////////// #ifndef ROOT_TString #include "TString.h" #endif class TGTextBuffer { private: TString *fBuffer; public: TGTextBuffer() { fBuffer = new TString; } TGTextBuffer(Int_t length) { fBuffer = new TString(length); } virtual ~TGTextBuffer() { delete fBuffer; } UInt_t GetTextLength() const { return fBuffer->Length(); } UInt_t GetBufferLength() const { return fBuffer->Capacity(); } const char *GetString() const { return fBuffer->Data(); } void AddText(Int_t pos, const char *text) { fBuffer->Insert(pos, text); } void AddText(Int_t pos, const char *text, Int_t length) { fBuffer->Insert(pos, text, length); } void RemoveText(Int_t pos, Int_t length) { fBuffer->Remove(pos, length); } void Clear() { fBuffer->Remove(0, fBuffer->Length()); } ClassDef(TGTextBuffer,0) // Text buffer used by widgets like TGTextEntry, etc. }; #endif