135 srcStart.
fX = srcStart.
fY = 0;
136 srcEnd.
fY =
text->RowCount()-1;
137 srcEnd.
fX =
text->GetLineLength(srcEnd.
fY)-1;
276 while (count < rows) {
278 if (
width > longest) {
293 pos2.
fX = pos2.
fY = 0;
303 if (!
fText->
Search(&pos, pos2,
string, direction, caseSensitive)) {
368 if (xCoord <= 0 || pos.
fY < 0 ||
width <= 0) {
371 if (xCoord >
width) {
395 char *buffer, *travelBuffer;
405 if (len <= 0 || xCoord < 0) {
411 if (!buffer)
return 0;
412 travelBuffer = buffer;
413 charBuffer = *travelBuffer++;
416 while (viscoord - cw >= 0 && pos.
fX < len) {
419 charBuffer = *travelBuffer++;
457 if (!(fp = fopen(filename,
"r")))
473 if (!txtbuf || !txtbuf[0]) {
495 insPos.
fY = insPos.
fX = 0;
500 if (endPos.
fX == -1) {
544 Long_t xoffset, len, len1, len2;
556 while (pos.
fY <= line_count &&
580 while (buffer[i] !=
'\0') {
581 if (buffer[i] ==
'\t') {
584 while (buffer[j] == 16 && buffer[j] !=
'\0') {
647 buffer,
Int_t(len1));
657 buffer+len1,
Int_t(len2));
661 buffer+len1+len2,
Int_t(len-(len1+len2)));
722 static const Int_t kAcceleration[
kAutoScrollFudge + 1] = {1, 1, 1, 1, 2, 3, 4, 6, 8, 12, 16};
970 char *buffer, *temp_buffer;
971 Long_t len, prev_len, temp_len, count;
977 reply.
fTime =
event->fTime;
978 reply.
fUser[0] =
event->fUser[0];
979 reply.
fUser[1] =
event->fUser[1];
980 reply.
fUser[2] =
event->fUser[2];
981 reply.
fUser[3] =
event->fUser[3];
1001 pos.
fY = pos.
fX = 0;
1002 buffer =
new char[len+1];
1006 if (temp_len < 0)
break;
1008 strncpy(buffer+prev_len, temp_buffer, (
UInt_t)temp_len);
1010 buffer[prev_len+temp_len] = 10;
1011 prev_len += temp_len+1;
1013 prev_len += temp_len;
1014 delete [] temp_buffer;
1021 if (buffer[i] ==
'\t') {
1023 while (buffer[j] == 16 && buffer[j]) {
1027 strcpy(buffer+i+1, buffer+j);
1054 Int_t weirdcount = 0;
1062 infile = fopen(candidate,
"r");
1065 nchars = fread(buffer, 1, 512, infile);
1068 for (i = 0; i < nchars; i++) {
1069 if (buffer[i] & 128)
1071 if (buffer[i] ==
'\0')
1075 if ((nchars > 0) && ((weirdcount * 100 / nchars) > 30))
1095 "Overwrite",
"Do you want to replace existing text?",
1121 if (sfname.
Length() > 7) {
1150 for (
int i = 0; typelist[i] !=
kNone; ++i) {
1151 if (typelist[i] == rootObj)
1153 if (typelist[i] == uriObj)
1189 posStart.
fY = pos.
fY;
1247 posStart.
fY = pos.
fY;
1349 if (tcw < 0) tcw = 0;
1364 if (tch < 0) tch = 0;
1386 if (tch < 0) tch = 0;
1401 if (tcw < 0) tcw = 0;
1564 out <<
" TGTextView *";
1567 <<
");"<< std::endl;
1569 if (option && strstr(option,
"keep_names"))
1570 out <<
" " <<
GetName() <<
"->SetName(\"" <<
GetName() <<
"\");" << std::endl;
1588 out <<
" " <<
GetName() <<
"->LoadFile(" << quote << fn.
Data() << quote <<
");" << std::endl;
const Mask_t kButton1Mask
const Mask_t kKeyShiftMask
Handle_t FontStruct_t
Pointer to font structure.
ULong_t Pixel_t
Pixel value.
Handle_t Window_t
Window handle.
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
include TDocParser_001 C image html pict1_TDocParser_001 png width
const Int_t kAutoScrollFudge
const Int_t kAcceleration[kAutoScrollFudge+1]
static Bool_t IsTextFile(const char *candidate)
Returns true if given a text file Uses the specification given on p86 of the Camel book.
static Bool_t IsTextFile(const char *candidate)
Returns true if given a text file Uses the specification given on p86 of the Camel book.
R__EXTERN TSystem * gSystem
The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket.
void * ReadObjectAny(const TClass *cast) override
Read object from I/O buffer.
void SetReadMode()
Set buffer in read mode.
Drag and drop data container.
Atom_t fDataType
Data type description.
Int_t fDataLength
Length of data.
const TGWindow * GetRoot() const
Returns current root (i.e.
const TGResourcePool * GetResourcePool() const
void NeedRedraw(TGWindow *w, Bool_t force=kFALSE)
Set redraw flags.
Encapsulate fonts used in the GUI system.
FontStruct_t GetFontStruct() const
FontH_t GetFontHandle() const
UInt_t fHeight
frame height
virtual UInt_t GetDefaultWidth() const
virtual UInt_t GetDefaultHeight() const
Int_t fBorderWidth
frame border width
virtual void SetBackgroundColor(Pixel_t back)
Set background color (override from TGWindow base class).
virtual void SendMessage(const TGWindow *w, Longptr_t msg, Longptr_t parm1, Longptr_t parm2)
Send message (i.e.
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
virtual Pixel_t GetBackground() const
virtual void MoveResize(Int_t x, Int_t y, UInt_t w=0, UInt_t h=0)
Move and/or resize the frame.
virtual void SetWidth(UInt_t w)
void SetDNDTarget(Bool_t onoff)
virtual void MapWindow()
map window
static Pixel_t fgWhitePixel
virtual void SetHeight(UInt_t h)
virtual void UnmapWindow()
unmap window
Encapsulate a graphics context used in the low level graphics.
void SetFont(FontH_t v)
Set font.
void SetForeground(Pixel_t v)
Set foreground color.
void SetBackground(Pixel_t v)
Set background color.
void SetGraphicsExposures(Bool_t v)
True if graphics exposure should be generated.
TGClient * fClient
Connection to display server.
Handle_t fId
X11/Win32 Window identifier.
const TGGC * GetDocumentBckgndGC() const
A TGTextView is a text viewer widget.
virtual Long_t ReturnLineLength(Long_t line)
virtual void AdjustWidth()
Adjust widget width to longest line.
virtual Bool_t Search(const char *string, Bool_t direction, Bool_t caseSensitive)
Search for string in text.
Int_t fMaxDescent
maximum descent in font
virtual void Update()
update the whole window of text view
TGGC fNormGC
graphics context for drawing text
Int_t fMaxAscent
maximum ascent in font
Bool_t fReadOnly
text cannot be edited
TGText * fText
text buffer
virtual void UnMark()
Clear marked region.
virtual Long_t ToObjXCoord(Long_t xCoord, Long_t line)
Convert x screen coordinate to column in specified line.
virtual void SetHsbPosition(Long_t newPos)
Set position of horizontal scrollbar.
virtual Bool_t LoadFile(const char *fname, long startpos=0, long length=-1)
Load a file in the text view widget.
virtual void Mark(Long_t xPos, Long_t yPos)
Mark a text region from xPos to yPos.
static TGGC * fgDefaultSelectedGC
virtual Long_t ToScrYCoord(Long_t yCoord)
Convert line number to screen coordinate.
virtual Long_t ReturnLongestLineWidth()
Return width of longest line.
Int_t fMaxWidth
maximum width of character in font
TGText * fClipText
clipboard text buffer
virtual Bool_t HandleDoubleClick(Event_t *event)
handle double click
virtual Bool_t LoadBuffer(const char *txtbuf)
Load text from a text buffer. Return false in case of failure.
FontStruct_t fFont
text font
virtual void DataDropped(const char *fname)
void Init(Pixel_t bg)
Initialize a text view widget.
virtual Bool_t HandleSelectionRequest(Event_t *event)
Handle request to send current clipboard contents to requestor window.
Bool_t fIsSaved
true is content is saved
static const TGGC & GetDefaultSelectedGC()
Return selection graphics context in use.
virtual Bool_t HandleMotion(Event_t *event)
Handle mouse motion event in the text editor widget.
static const TGGC & GetDefaultGC()
Return default graphics context in use.
Bool_t fIsMarking
true if in marking mode
virtual void SavePrimitive(std::ostream &out, Option_t *="")
Save a text edit widget as a C++ statement(s) on output stream out.
virtual void AddLine(const char *string)
Add a line of text to the view widget.
Bool_t fIsMarked
true if text is marked/selected
virtual Bool_t HandleCrossing(Event_t *event)
Handle mouse crossing event.
virtual Bool_t HandleSelectionClear(Event_t *event)
Handle selection clear event.
TGGC fSelbackGC
graphics context for drawing marked background
virtual void HLayout()
Horizontal layout of widgets (canvas, scrollbar).
virtual Atom_t HandleDNDPosition(Int_t x, Int_t y, Atom_t action, Int_t xroot, Int_t yroot)
Handle Drag position event.
TGGC fSelGC
graphics context for drawing marked text
TViewTimer * fScrollTimer
scrollbar timer
static const TGGC & GetDefaultSelectedBackgroundGC()
Return graphics context for highlighted frame background.
virtual Bool_t SelectAll()
Select all text in the viewer.
virtual void Layout()
Layout the components of view.
virtual void SetForegroundColor(Pixel_t)
Set text color.
Atom_t * fDNDTypeList
handles DND types
virtual void SetSelectBack(Pixel_t p)
set selected text background color
static TGGC * fgDefaultGC
virtual void SetVsbPosition(Long_t newPos)
Set position of vertical scrollbar.
TGLongPosition fMarkedEnd
end position of marked text
virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h)
Draw lines in exposed region.
virtual Long_t ToScrXCoord(Long_t xCoord, Long_t line)
Convert column number in specified line to screen coordinate.
virtual void Clear(Option_t *="")
Clear text view widget.
virtual void VLayout()
Vertical layout of widgets (canvas, scrollbar).
virtual Bool_t HandleDNDLeave()
Handle Drag Leave event.
static const TGFont * fgDefaultFont
virtual void DataChanged()
Bool_t fMarkedFromY
true if text is marker from y
virtual Long_t ReturnLineCount()
virtual Bool_t Copy()
Copy selected text to clipboard.
TGTextView(const TGTextView &)=delete
static FontStruct_t GetDefaultFontStruct()
Return default font structure in use.
virtual Atom_t HandleDNDEnter(Atom_t *typelist)
Handle Drag Enter event.
virtual Bool_t HandleTimer(TTimer *t)
Handle scroll timer.
virtual Long_t ReturnHeighestColHeight()
virtual void AddLineFast(const char *string)
Add a line of text to the view widget.
virtual Bool_t HandleButton(Event_t *event)
Handle mouse button event in text editor.
virtual ~TGTextView()
Cleanup text view widget.
virtual void SetFont(FontStruct_t font)
Changes text entry font.
virtual void SetBackground(Pixel_t p)
set background color
virtual void ShowBottom()
Show bottom of the page.
virtual void SetSBRange(Int_t direction)
Set the range for the kVertical or kHorizontal scrollbar.
virtual Bool_t HandleDNDDrop(TDNDData *data)
Handle Drop event.
TGLongPosition fMarkedStart
start position of marked text
virtual void SetText(TGText *text)
Adopt a new text buffer. The text will be deleted by this object.
Bool_t fMarkedFromX
true if text is marked from x
virtual void ShowTop()
Show top of the page.
virtual void AddText(TGText *text)
Add text to the view widget.
virtual void SetSelectFore(Pixel_t p)
set selected text color
virtual Long_t ToObjYCoord(Long_t yCoord)
Convert y screen coordinate to line number.
static const TGGC * fgDefaultSelectedBackgroundGC
A TGText is a multi line text buffer.
Bool_t AddText(TGText *text)
Add another text buffer to this buffer.
Long_t GetLongestLine() const
Bool_t Search(TGLongPosition *foundPos, TGLongPosition start, const char *searchString, Bool_t direction, Bool_t caseSensitive)
Search for string searchString starting at the specified position going in forward (direction = true)...
Bool_t Save(const char *fn)
Save text buffer to file fn.
Bool_t InsText(TGLongPosition pos, const char *buf)
Insert single line at specified position.
char * GetLine(TGLongPosition pos, ULong_t length)
Return string at position pos.
Bool_t Load(const char *fn, Long_t startpos=0, Long_t length=-1)
Load text from file fn.
Bool_t LoadBuffer(const char *txtbuf)
Load a 0 terminated buffer. Lines will be split at ' '.
void Clear()
Clear text buffer.
const char * GetFileName() const
Long_t GetLineLength(Long_t row)
Get length of specified line. Returns -1 if row does not exist.
A TGView provides the infrastructure for text viewer and editor widgets.
TGHScrollBar * fHsb
horizontal scrollbar
TGVScrollBar * fVsb
vertical scrollbar
TGLongPosition fMousePos
position of mouse
TGLongPosition fVisible
position of visible region
virtual void SetVisibleStart(Int_t newTop, Int_t direction)
Scroll view in specified direction to make newTop the visible location.
Int_t fScrolling
scrolling direction
TGLongPosition fScrollVal
scroll value
TGViewFrame * fCanvas
frame containing the text
virtual void UpdateRegion(Int_t x, Int_t y, UInt_t w, UInt_t h)
update a part of view
TGGC fWhiteGC
graphics context used for scrolling generates GraphicsExposure events
virtual void Clear(Option_t *="")
Clear view.
TGRectangle fExposedRegion
exposed area
ROOT GUI Window base class.
virtual const TGWindow * GetMainFrame() const
Returns top level main frame.
virtual const char * GetName() const
Return unique name, used in SavePrimitive methods.
const TGWindow * fParent
Parent window.
virtual Bool_t IsMapped()
Returns kTRUE if window is mapped on screen, kFALSE otherwise.
virtual Bool_t HandleTimer(TTimer *)
Execute action in response of a timer timing out.
Class supporting a collection of lines with C++ code.
TList * GetListOfLines() const
virtual const char * GetName() const
Returns name of object.
Collectable string class.
const char * GetName() const
Returns name of object.
Mother of all ROOT objects.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
const char * Data() const
TString & ReplaceAll(const TString &s1, const TString &s2)
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
A TSystemFile describes an operating system file.
virtual Bool_t ExpandPathName(TString &path)
Expand a pathname getting rid of special shell characters like ~.
int GetPathInfo(const char *path, Long_t *id, Long_t *size, Long_t *flags, Long_t *modtime)
Get info about a file: id, size, flags, modification time.
virtual const char * UnixPathName(const char *unixpathname)
Convert from a local pathname to a Unix pathname.
virtual void AddTimer(TTimer *t)
Add timer to list of system timers.
Handles synchronous and a-synchronous timer events.
void Reset()
Reset the timer.
This class represents a WWW compatible URL.
const char * GetFile() const
Bool_t Notify()
Notify when timer times out and reset the timer.
EGEventType fType
of event (see EGEventType)
UInt_t fState
key or button mask
Int_t fYRoot
coordinates relative to root
Time_t fTime
time event event occurred in ms
Longptr_t fUser[5]
5 longs can be used by client message events NOTE: only [0], [1] and [2] may be used.
Rectangle structure (maps to the X11 XRectangle structure)