/usr/include/root/TGTextEdit.h is in libroot-gui-dev 5.34.19+dfsg-1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | // @(#)root/gui:$Id$
// Author: Fons Rademakers 1/7/2000
/*************************************************************************
* 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_TGTextEdit
#define ROOT_TGTextEdit
//////////////////////////////////////////////////////////////////////////
// //
// TGTextEdit //
// //
// A TGTextEdit is a specialization of TGTextView. It provides the //
// text edit functionality to the static text viewing widget. //
// For the messages supported by this widget see the TGView class. //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TGTextView
#include "TGTextView.h"
#endif
class TGPopupMenu;
class TGSearchType;
class TGTextEditHist;
class TGTextEdit : public TGTextView {
private:
TGTextEdit(const TGTextEdit&); // Not implemented
TGTextEdit& operator=(const TGTextEdit&); // Not implemented
public:
enum EInsertMode { kInsert, kReplace };
enum {
kM_FILE_NEW, kM_FILE_OPEN, kM_FILE_CLOSE, kM_FILE_SAVE, kM_FILE_SAVEAS,
kM_FILE_PRINT, kM_EDIT_CUT, kM_EDIT_COPY, kM_EDIT_PASTE, kM_EDIT_SELECTALL,
kM_SEARCH_FIND, kM_SEARCH_FINDAGAIN, kM_SEARCH_GOTO
};
protected:
GContext_t fCursor0GC; // graphics context for erasing cursor
GContext_t fCursor1GC; // graphics context for drawing cursor
Int_t fCursorState; // cursor state (1=drawn, 2=erased)
TViewTimer *fCurBlink; // cursor blink timer
TGPopupMenu *fMenu; // popup menu with editor actions
TGSearchType *fSearch; // structure used by search dialog
TGLongPosition fCurrent; // current cursor position
EInsertMode fInsertMode; // *OPTION={GetMethod="GetInsertMode";SetMethod="SetInsertMode";Items=(kInsert="&Insert",kReplace="&Replace")}*
Bool_t fEnableMenu; // enable context menu with editor actions
TGTextEditHist *fHistory; // undo manager
Bool_t fEnableCursorWithoutFocus; // enable cursor visibility when focus went out from
// text editor window (default is kTRUE)
static TGGC *fgCursor0GC;
static TGGC *fgCursor1GC;
void Init();
virtual void SetMenuState();
virtual void CursorOn();
virtual void CursorOff();
virtual void DrawCursor(Int_t mode);
virtual void AdjustPos();
virtual void Copy(TObject &) const { MayNotUse("Copy(TObject &)"); }
static const TGGC &GetCursor0GC();
static const TGGC &GetCursor1GC();
public:
TGTextEdit(const TGWindow *parent = 0, UInt_t w = 1, UInt_t h = 1, Int_t id = -1,
UInt_t sboptions = 0, Pixel_t back = GetWhitePixel());
TGTextEdit(const TGWindow *parent, UInt_t w, UInt_t h, TGText *text,
Int_t id = -1, UInt_t sboptions = 0, Pixel_t back = GetWhitePixel());
TGTextEdit(const TGWindow *parent, UInt_t w, UInt_t h, const char *string,
Int_t id = -1, UInt_t sboptions = 0, Pixel_t back = GetWhitePixel());
virtual ~TGTextEdit();
virtual Bool_t SaveFile(const char *fname, Bool_t saveas = kFALSE);
virtual void Clear(Option_t * = "");
virtual Bool_t Copy();
virtual Bool_t Cut();
virtual Bool_t Paste();
virtual void InsChar(char character);
virtual void DelChar();
virtual void BreakLine();
virtual void PrevChar();
virtual void NextChar();
virtual void LineUp();
virtual void LineDown();
virtual void ScreenUp();
virtual void ScreenDown();
virtual void Home();
virtual void End();
virtual void Print(Option_t * = "") const;
virtual void Delete(Option_t * = "");
virtual Bool_t Search(const char *string, Bool_t direction = kTRUE, Bool_t caseSensitive = kFALSE);
virtual void Search(Bool_t close);
virtual Bool_t Replace(TGLongPosition pos, const char *oldText, const char *newText,
Bool_t direction, Bool_t caseSensitive);
virtual Bool_t Goto(Long_t line, Long_t column = 0);
virtual void SetInsertMode(EInsertMode mode = kInsert); //*SUBMENU*
EInsertMode GetInsertMode() const { return fInsertMode; }
TGPopupMenu *GetMenu() const { return fMenu; }
virtual void EnableMenu(Bool_t on = kTRUE) { fEnableMenu = on; } //*TOGGLE* *GETTER=IsMenuEnabled
virtual Bool_t IsMenuEnabled() const { return fEnableMenu; }
TList *GetHistory() const { return (TList *)fHistory; }
virtual void EnableCursorWithoutFocus(Bool_t on = kTRUE) { fEnableCursorWithoutFocus = on; }
virtual Bool_t IsCursorEnabledithoutFocus() const { return fEnableCursorWithoutFocus; }
virtual void DrawRegion(Int_t x, Int_t y, UInt_t width, UInt_t height);
virtual void ScrollCanvas(Int_t newTop, Int_t direction);
virtual void SetFocus() { RequestFocus(); }
virtual void SetCurrent(TGLongPosition new_coord);
TGLongPosition GetCurrentPos() const { return fCurrent; }
virtual Long_t ReturnLongestLineWidth();
virtual Bool_t HandleTimer(TTimer *t);
virtual Bool_t HandleSelection (Event_t *event);
virtual Bool_t HandleButton(Event_t *event);
virtual Bool_t HandleKey(Event_t *event);
virtual Bool_t HandleMotion(Event_t *event);
virtual Bool_t HandleCrossing(Event_t *event);
virtual Bool_t HandleFocusChange(Event_t *event);
virtual Bool_t HandleDoubleClick(Event_t *event);
virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
virtual void FindAgain() { Emit("FindAgain()"); } //*SIGNAL*
virtual void Closed() { Emit("Closed()"); } //*SIGNAL*
virtual void Opened() { Emit("Opened()"); } //*SIGNAL*
virtual void Saved() { Emit("Saved()"); } //*SIGNAL*
virtual void SavedAs() { Emit("SavedAs()"); } //*SIGNAL*
virtual void SavePrimitive(ostream &out, Option_t * = "");
ClassDef(TGTextEdit,0) // Text edit widget
};
#endif
|