63#include "RConfigure.h"
157 delete dynamic_cast<TObject *
>(obj);
224 const TGPicture *pic1 =
nullptr, *pic2 =
nullptr;
227 pic1 =
gClient->GetPicture(
"checked_dis_t.xpm");
228 pic2 =
gClient->GetPicture(
"unchecked_dis_t.xpm");
231 pic1 =
gClient->GetPicture(
"checked_t.xpm");
232 pic2 =
gClient->GetPicture(
"unchecked_t.xpm");
298 ::Warning(
"TGListTreeItem::SetCheckBoxPictures",
"checked picture not specified, defaulting to checked_t");
299 checked =
fClient->GetPicture(
"checked_t.xpm");
304 ::Warning(
"TGListTreeItem::SetCheckBoxPictures",
"unchecked picture not specified, defaulting to unchecked_t");
305 unchecked =
fClient->GetPicture(
"unchecked_t.xpm");
307 ((
TGPicture *)unchecked)->AddReference();
322 ::Warning(
"TGListTreeItem::SetPictures",
"opened picture not specified, defaulting to ofolder_t");
323 opened =
fClient->GetPicture(
"ofolder_t.xpm");
328 ::Warning(
"TGListTreeItem::SetPictures",
"closed picture not specified, defaulting to folder_t");
329 closed =
fClient->GetPicture(
"folder_t.xpm");
535 }
else if (state != item->
IsActive()) {
576 if (
fCanvas->GetContainer()->GetHeight()) {
582 page = std::min(
r, 90);
589 if (newpos < 0) newpos = 0;
590 fCanvas->SetVsbPosition(newpos);
596 fCanvas->SetVsbPosition(newpos);
604 Int_t minxchk = 0, maxxchk = 0;
607 maxxchk = (item->
fXtext - 4);
616 (event->
fX > minxchk))
626 if ((event->
fX < maxx) && (event->
fX > minx)) {
763 for (
int i = 0; typelist[i] !=
kNone; ++i) {
801 Emit(
"DataDropped(TGListTreeItem*,TDNDData*)", args);
816 }
else if ((item =
FindItem(event->
fY)) != 0) {
832 if ((event->
fX < (item->
fXtext - 4) &&
851 if (
dynamic_cast<TObject *
>(obj)) {
855 if (str.BeginsWith(
"file://")) {
857 fDNDData.fData = (
void *)strdup(str.Data());
858 fDNDData.fDataLength = str.Length()+1;
874 fDNDData.fData = (
void *)strdup(str.Data());
875 fDNDData.fDataLength = str.Length()+1;
881 if (xmpname.
EndsWith(
"_t.xpm__16x16"))
882 xmpname.
ReplaceAll(
"_t.xpm__16x16",
"_s.xpm");
909 item->
fY - pos.fY + item->
fHeight, 1000);
917 item->
fY - pos.fY + item->
fHeight, 1000);
946 gVirtualX->LookupString(event, input,
sizeof(input), keysym);
1034 switch((
EKeySym)keysym & ~0x20) {
1066 Emit(
"MouseOver(TGListTreeItem*,UInt_t)", args);
1093 Emit(
"KeyPressed(TGListTreeItem*,UInt_t,UInt_t)", args);
1115 Emit(
"Checked(TObject*,Bool_t)", args);
1128 Emit(
"Clicked(TGListTreeItem*,Int_t)", args);
1143 Emit(
"Clicked(TGListTreeItem*,Int_t,Int_t,Int_t)", args);
1159 Emit(
"Clicked(TGListTreeItem*,Int_t,UInt_t,Int_t,Int_t)", args);
1172 Emit(
"DoubleClicked(TGListTreeItem*,Int_t)", args);
1187 Emit(
"DoubleClicked(TGListTreeItem*,Int_t,Int_t,Int_t)", args);
1215 Int_t newpos =
fCanvas->GetVsbPosition() - dim.fHeight;
1216 if (newpos<0) newpos = 0;
1218 fCanvas->SetVsbPosition(newpos);
1230 Int_t newpos =
fCanvas->GetVsbPosition() + dim.fHeight;
1232 fCanvas->SetVsbPosition(newpos);
1251 if (findy <= 2*height) {
1253 if (newpos<0) newpos = 0;
1254 fCanvas->SetVsbPosition(newpos);
1278 if (findy >= ((
Int_t)dim.fHeight - 2*height)) {
1280 if (newpos<0) newpos = 0;
1281 fCanvas->SetVsbPosition(newpos);
1312 if (
y==0)
y = yparent;
1314 if (
fCanvas->GetVScrollbar()->IsMapped()) {
1342 if (close || buf.
IsNull())
1380 if (((
Int_t)w < 1) || (w > 32768) || ((
Int_t)
h < 1)) {
1413 UInt_t width, height, old_width, old_height;
1431 DrawItem(
id, item,
x,
y, &xbranch, &width, &height);
1447 if ((old_width !=
fDefw) || (old_height !=
fDefh)) {
1466 DrawItem(
id, item,
x,
y, &xbranch, &width, &height);
1487 Int_t xpic1, ypic1, xbranch, ybranch, xtext, ytext = 0, yline, xc;
1502 if (pic1) xpic2 = xpic1 + pic1->
GetWidth() + 1;
1503 else xpic2 = xpic1 + 1;
1521 ybranch = ypic1 + (
Int_t)(height >> 1);
1522 yline = ypic1 + (
Int_t)(height >> 1);
1538 Int_t ylinep = yline - pos.fY;
1539 Int_t ybranchp = ybranch - pos.fY;
1540 Int_t ypicp = ypic1 - pos.fY;
1577 *retheight = height;
1614 width = dim.fWidth-2;
1897 if ((findy >=
y) && (findy <=
y + (
Int_t)height)) {
1905 if (*finditem)
return -1;
1928 while (item && !finditem) {
1937 if ((findy >=
y) && (findy <=
y + (
Int_t)height))
1960 if ((parent == 0) || (parent && parent->
IsOpen()))
1976 if ((parent == 0) || (parent && parent->
IsOpen()))
1992 item =
AddItem(parent,
string, open, closed, checkbox);
2160 if (count <= 1)
return 1;
2173 list[0]->fPrevsibling = 0;
2174 for (i = 0; i < count; i++) {
2176 list[i]->fNextsibling = list[i + 1];
2178 list[i]->fPrevsibling = list[i - 1];
2180 list[count - 1]->fNextsibling = 0;
2187 fLast = list[count-1];
2219 first =
fFirst->fFirstchild;
2281 }
else if (!item &&
fFirst) {
2304 }
else if (!item &&
fFirst) {
2325 if (!path || !*path)
return 0;
2327 const char *p = path, *s;
2331 if (!
gVirtualX->InheritsFrom(
"TGX11")) {
2344 while (*p && *p ==
'/') p++;
2350 strlcpy(dirname, p, 1024);
2352 strlcpy(dirname, p, (s-p)+1);
2357 if (!diritem && dirname[0]) {
2362 if (!s || !s[0])
return diritem;
2369 if (!s || !s[0])
return item;
2404 strlcpy(path, tmppath, 1024);
2406 if (--depth == 0 && item) {
2407 snprintf(tmppath, 1023,
"...%s", path);
2408 strlcpy(path, tmppath, 1024);
2453 const TGGC *selgc =
gClient->GetResourcePool()->GetSelectedGC();
2504 fgLineGC->SetDashList(
"\x1\x1", 2);
2604 out <<
"\n // list tree\n";
2605 out <<
" TGListTree *" <<
GetName() <<
" = new TGListTree(";
2611 out << extra_args <<
");\n";
2613 if (option && strstr(option,
"keep_names"))
2614 out <<
" " <<
GetName() <<
"->SetName(\"" <<
GetName() <<
"\");\n";
2623 out <<
" " <<
GetName() <<
"->OpenItem(" << var_name <<
");\n";
2625 out <<
" " <<
GetName() <<
"->CloseItem(" << var_name <<
");\n";
2628 out <<
" " <<
GetName() <<
"->SetSelected(" << var_name <<
");\n";
2648 out <<
" " <<
GetName() <<
"->SetSelected(" << var_name <<
");\n";
2662 static const TGPicture *oldopen =
nullptr, *oldclose =
nullptr, *oldcheck =
nullptr, *olduncheck =
nullptr;
2663 static int item_cnt = 0;
2666 oldopen = oldclose = oldcheck = olduncheck =
nullptr;
2668 out <<
" const TGPicture *pic_litem_open = nullptr, *pic_litem_close = nullptr, *pic_litem_check = nullptr, "
2669 "*pic_litem_uncheck = nullptr;\n";
2677 gSystem->ExpandPathName(picname);
2683 gSystem->ExpandPathName(picname);
2687 out <<
" TGListTreeItem *" << var_name <<
" = " << tree_var_name <<
"->AddItem(" << parent_var_name <<
", \""
2689 << (
fClosedPic ?
"pic_litem_close" :
"nullptr");
2695 out <<
" " << var_name <<
"->CheckItem();\n";
2699 gSystem->ExpandPathName(picname);
2705 gSystem->ExpandPathName(picname);
2708 out <<
" " << var_name <<
"->SetCheckBoxPictures(" << (
fCheckedPic ?
"pic_litem_check" :
"nullptr") <<
", "
2709 << (
fUncheckedPic ?
"pic_litem_uncheck" :
"nullptr") <<
");\n";
2712 out <<
" " << var_name <<
"->SetColor(" <<
fColor <<
");\n";
2751 const TGPicture *pic1 =
nullptr, *pic2 =
nullptr;
2755 parent = current ? current : item;
2760 pic1 =
fClient->GetPicture(
"checked_dis_t.xpm");
2761 pic2 =
fClient->GetPicture(
"unchecked_dis_t.xpm");
2764 pic1 =
fClient->GetPicture(
"checked_t.xpm");
2765 pic2 =
fClient->GetPicture(
"unchecked_t.xpm");
2772 pic1 =
fClient->GetPicture(
"checked_t.xpm");
2773 pic2 =
fClient->GetPicture(
"unchecked_t.xpm");
2806 if (fitem)
return fitem;
2821 if (!checked || !
fFirst)
return;
2838 if (!checked || !item)
return;
const Mask_t kGCBackground
const Mask_t kGCForeground
const Mask_t kGCLineStyle
const Mask_t kGCLineWidth
const Mask_t kButtonPressMask
const Mask_t kGCFillStyle
const Mask_t kAnyModifier
Handle_t Pixmap_t
Pixmap handle.
const Mask_t kKeyPressMask
const Mask_t kPointerMotionMask
const Mask_t kKeyShiftMask
const Mask_t kKeyControlMask
const Mask_t kLeaveWindowMask
Handle_t GContext_t
Graphics context handle.
const Mask_t kButtonReleaseMask
const Mask_t kGCGraphicsExposures
const Mask_t kEnterWindowMask
Handle_t FontStruct_t
Pointer to font structure.
ULong_t Pixel_t
Pixel value.
ULongptr_t Handle_t
Generic resource handle.
int Int_t
Signed integer 4 bytes (int).
long Longptr_t
Integer large enough to hold a pointer (platform-dependent).
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
long Long_t
Signed long integer 4 bytes (long). Size depends on architecture.
bool Bool_t
Boolean (0=false, 1=true) (bool).
const char Option_t
Option string (const char).
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
externTGDNDManager * gDNDManager
Int_t Compare(const void *item1, const void *item2)
char * StrDup(const char *str)
Duplicate the string str.
The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket.
Bool_t IsTObject() const
Return kTRUE is the class inherits from TObject.
static ULong_t Number2Pixel(Int_t ci)
Drag and drop data container.
TGCanvas * fCanvas
pointer to canvas
virtual void ClearViewPort()
Clear view port and redraw full content.
const TGWindow * fMsgWindow
window handling container messages
virtual void SetDragPixmap(const TGPicture *pic)
Set drag window pixmaps and hotpoint.
TGCanvas * GetCanvas() const
TGContainer(const TGContainer &)=delete
void DoRedraw() override
Redraw content of container in the viewport region.
virtual TGDimension GetPageDimension() const
Returns page dimension.
TGViewPort * fViewPort
container viewport
virtual TGVScrollBar * GetVScrollbar() const
returns pointer to vert. scroll bar
virtual TGPosition GetPagePosition() const
Returns page position.
static Atom_t GetDNDActionCopy()
Encapsulate fonts used in the GUI system.
static Pixel_t GetDefaultSelectedBackground()
Get default selected frame background.
void AddInput(UInt_t emask)
Add events specified in the emask to the events the frame should handle.
UInt_t fHeight
frame height
static Pixel_t fgDefaultSelectedBackground
virtual void SendMessage(const TGWindow *w, Longptr_t msg, Longptr_t parm1, Longptr_t parm2)
Send message (i.e.
TString SaveCtorArgs(std::ostream &out, UInt_t dflt_options=kChildFrame, Bool_t check_white_pixel=kFALSE)
Return options and custom color as constructor args Used in the SavePrimitive methods,...
void SetDNDTarget(Bool_t onoff)
static Pixel_t fgWhitePixel
Pixel_t fBackground
frame background color
static Pixel_t fgBlackPixel
Encapsulate a graphics context used in the low level graphics.
Pixel_t GetForeground() const
TString fTipText
tooltip text
const char * GetTipText() const override
Bool_t fHasColor
true if item has assigned color
void CheckItem(Bool_t checked=kTRUE) override
void SetCheckBox(Bool_t on=kTRUE) override
Set a check box on the tree node.
void CheckAllChildren(Bool_t state=kTRUE) override
Set all child items of this one checked if state=kTRUE, unchecked if state=kFALSE.
void SetPictures(const TGPicture *opened, const TGPicture *closed) override
Change list tree item icons.
const TGPicture * fCheckedPic
icon for checked item
const TGPicture * fClosedPic
icon for closed state
const char * GetText() const override
Bool_t IsChecked() const override
Bool_t fActive
true if item is active
Color_t fColor
item's color
Bool_t fOwnsData
true if user data has to be deleted
Pixel_t GetActiveColor() const override
Return color for marking items that are active or selected.
Bool_t HasCheckBox() const override
const TGPicture * fUncheckedPic
icon for unchecked item
Bool_t HasCheckedChild(Bool_t first=kFALSE) override
Add all child items of 'item' into the list 'checked'.
Bool_t fCheckBox
true if checkbox is visible
void CheckChildren(TGListTreeItem *item, Bool_t state) override
Set all child items of 'item' checked if state=kTRUE; unchecked if state=kFALSE.
void * fUserData
pointer to user data structure
void SetCheckBoxPictures(const TGPicture *checked, const TGPicture *unchecked) override
Change list tree check item icons.
Bool_t fChecked
true if item is checked
Bool_t HasUnCheckedChild(Bool_t first=kFALSE) override
Add all child items of 'item' into the list 'checked'.
TGListTreeItemStd(const TGListTreeItemStd &)=delete
void UpdateState() override
Update the state of the node 'item' according to the children states.
const TGPicture * fOpenPic
icon for open state
~TGListTreeItemStd() override
Delete list tree item.
TString SaveTreeItem(std::ostream &out, const char *treevarname, const char *parent_var_name) override
Save a list tree item attributes as a C++ statements on output stream.
TGListTreeItem * GetFirstChild() const
void Rename(const char *new_name)
virtual void SetCheckBoxPictures(const TGPicture *, const TGPicture *)
virtual Bool_t IsActive() const =0
virtual const char * GetText() const =0
virtual void CheckAllChildren(Bool_t=kTRUE)
TGListTreeItem * fLastchild
pointer to last child item
TGListTreeItem * fFirstchild
pointer to first child item
TGListTreeItem * GetNextSibling() const
virtual void CheckItem(Bool_t=kTRUE)=0
TGListTreeItem * fParent
pointer to parent
TGListTreeItem * fPrevsibling
pointer to previous sibling
Bool_t IsDNDTarget() const
Bool_t IsDNDSource() const
virtual Bool_t HasCheckedChild(Bool_t=kFALSE)
TGClient * fClient
pointer to TGClient
TGListTreeItem * GetParent() const
Bool_t fOpen
true if item is open
virtual TString SaveTreeItem(std::ostream &, const char *, const char *)
TGListTreeItem(const TGListTreeItem &)=delete
virtual Bool_t HasUnCheckedChild(Bool_t=kFALSE)
virtual void SetTipText(const char *)
virtual void SetActive(Bool_t)
virtual Int_t GetTextLength() const =0
virtual const TGPicture * GetCheckBoxPicture() const =0
Int_t fDNDState
EDNDFlags.
virtual Bool_t IsOpen() const
TGListTreeItem * GetPrevSibling() const
virtual Color_t GetColor() const =0
virtual UInt_t GetPicWidth() const
Return width of item's icon.
virtual Bool_t IsChecked() const =0
virtual const TGPicture * GetPicture() const =0
virtual void SetOpen(Bool_t o)
virtual Pixel_t GetActiveColor() const =0
virtual void SetCheckBox(Bool_t=kTRUE)
virtual Bool_t HasCheckBox() const =0
virtual void UpdateState()
virtual Bool_t HasColor() const =0
virtual void * GetUserData() const =0
virtual void SetUserData(void *, Bool_t=kFALSE)
virtual const char * GetTipText() const =0
TGListTreeItem * fNextsibling
pointer to next sibling
virtual Int_t GetTipTextLength() const =0
static const TGPicture * GetOpenPic()
Returns the icon used by items in open state.
UInt_t fLastEventState
modifier state of the last keyboard event
GContext_t fColorGC
drawing context for main item color
Bool_t HandleButton(Event_t *event) override
Handle button events in the list tree.
TGListTreeItem * FindItemByObj(TGListTreeItem *item, void *ptr)
Find item with fUserData == ptr.
Bool_t HandleKey(Event_t *event) override
The key press event handler converts a key press to some line editor action.
TGListTreeItem * fSelected
pointer to selected item in list
Bool_t HandleDNDLeave() override
Handle drag leave events.
Int_t SortSiblings(TGListTreeItem *item)
Sort siblings of item.
GContext_t fLineGC
dashed line drawing context
static const TGPicture * GetUncheckedPic()
Returns the icon used for unchecked checkbox.
void Clicked(TGFrame *, Int_t) override
Emit Clicked() signal.
void RemoveReference(TGListTreeItem *item)
This function removes the specified item from the linked list.
UInt_t fDefw
default list width
static Pixel_t fgGrayPixel
void ClearHighlighted()
Un highlight items.
void PDeleteChildren(TGListTreeItem *item)
Recursively delete all children of an item.
void InsertChildren(TGListTreeItem *parent, TGListTreeItem *item)
Insert a list of ALREADY LINKED children into another list.
ECheckMode fCheckMode
how to propagate check properties through the tree
static const TGPicture * GetClosedPic()
Returns the icon used by items in closed state.
void UnselectAll(Bool_t draw)
Unselect all items.
Bool_t fDisableOpen
disable branch opening on double-clicks
Bool_t HandleCrossing(Event_t *event) override
Handle mouse crossing event.
Atom_t HandleDNDEnter(Atom_t *typelist) override
Handle drag enter events.
void InsertChild(TGListTreeItem *parent, TGListTreeItem *item)
Insert child in list.
void Search(Bool_t close=kTRUE) override
Invokes search dialog. Looks for item with the entered name.
void ToggleItem(TGListTreeItem *item)
Toggle check button state of the node 'item'.
GContext_t fDrawGC
icon drawing context
void PageUp(Bool_t select=kFALSE) override
Move content one page up.
void RenameItem(TGListTreeItem *item, const char *string)
Rename item in list tree.
GContext_t fHighlightGC
highlighted icon drawing context
void AddItem(TGListTreeItem *parent, TGListTreeItem *item)
Add given item to list tree.
void KeyPressed(TGFrame *, UInt_t, UInt_t) override
Signal emitted when keyboard key pressed.
Int_t DeleteChildren(TGListTreeItem *item)
Delete children of item from list.
Bool_t HandleMotion(Event_t *event) override
Handle mouse motion event.
TGListTreeItem * FindItem(Int_t findy)
Find item at postion findy.
TGListTreeItem * fBelowMouse
pointer to item below mouses cursor
Int_t FontHeight()
Returns height of currently used font.
void ReturnPressed(TGFrame *) override
Signal emitted when Return/Enter key pressed.
TGListTreeItem * fLast
pointer to last item in list
Int_t ReparentChildren(TGListTreeItem *item, TGListTreeItem *newparent)
Make newparent the new parent of the children of item.
void CheckItem(TGListTreeItem *item, Bool_t check=kTRUE)
Set check button state for the node 'item'.
Int_t DrawChildren(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_t xroot)
Draw children of item in list tree.
Int_t fExposeBottom
bottom y position of visible region
static const TGGC & GetLineGC()
Return graphics context in use for line drawing.
void CheckAllChildren(TGListTreeItem *item, Bool_t state)
Check all child items of 'item' and 'item' itself according to the state value: kTRUE means check all...
static TGGC * fgHighlightGC
static const TGPicture * GetCheckedPic()
Returns the icon used for checked checkbox.
TDNDData fDNDData
Drag and Drop data.
void SetCheckBox(TGListTreeItem *item, Bool_t on=kTRUE)
Set check button state for the node 'item'.
void OpenItem(TGListTreeItem *item)
Open item in list tree (i.e. show child items).
void Layout() override
Layout container entries.
virtual void DrawActive(Handle_t id, TGListTreeItem *item)
Draw active item with its active color.
Pixel_t fGrayPixel
gray draw color
Int_t Reparent(TGListTreeItem *item, TGListTreeItem *newparent)
Make newparent the new parent of item.
void GetChecked(TList *checked)
Add all checked list tree items of this list tree into the list 'checked'.
Int_t RecursiveDeleteItem(TGListTreeItem *item, void *userData)
Delete item with fUserData == ptr.
Int_t TextWidth(const char *c)
Returns text width relative to currently used font.
void DrawItem(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_t *xroot, UInt_t *retwidth, UInt_t *retheight)
Draw list tree item.
TGListTreeItem * fDropItem
item on which DND is over
void SetToolTipText(const char *text, Int_t x, Int_t y, Long_t delayms)
Set tool tip text associated with this item.
void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h) override
Redraw list tree.
TGListTreeItem * fTipItem
item for which tooltip is set
Int_t FontAscent()
Returns ascent of currently used font.
Bool_t HandleDoubleClick(Event_t *event) override
Handle double click event in the list tree (only for kButton1).
static const TGGC & GetColorGC()
Return graphics context for highlighted frame background.
virtual void Checked(TObject *obj, Bool_t check)
Emit Checked() signal.
static const TGGC & GetDrawGC()
Return default graphics context in use.
void HighlightChildren(TGListTreeItem *item, Bool_t state, Bool_t draw)
Highlight item children.
virtual void DataDropped(TGListTreeItem *item, TDNDData *data)
Emit DataDropped() signal.
Int_t fHspacing
horizontal spacing between items
static const TGPicture * fgClosedPic
icon for closed item
Int_t DeleteItem(TGListTreeItem *item)
Delete item from list tree.
static const TGPicture * fgUncheckedPic
icon for unchecked item
Int_t fMargin
number of pixels margin from left side
static const TGGC & GetHighlightGC()
Return graphics context for highlighted frame background.
UInt_t fDefh
default list height
void GetCheckedChildren(TList *checked, TGListTreeItem *item)
Add all child items of 'item' into the list 'checked'.
void DoubleClicked(TGFrame *, Int_t) override
Emit DoubleClicked() signal.
static const TGPicture * fgCheckedPic
icon for checked item
void End(Bool_t select=kFALSE) override
Move content to the bottom.
TGListTreeItem * GetFirstItem() const
TGListTreeItem * FindChildByName(TGListTreeItem *item, const char *name)
Find child of item by name.
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save a list tree widget as a C++ statements on output stream out.
static const TGGC & GetActiveGC()
Return default graphics context in use.
Bool_t fEventHandled
flag used from user code to bypass standard event handling
TGListTree(const TGListTree &)=delete
Int_t SortChildren(TGListTreeItem *item)
Sort children of item.
static const TGPicture * fgOpenPic
icon for open item
EColorMarkupMode fColorMode
if/how to render item's main color
Atom_t * fDNDTypeList
handles DND types
Int_t Sort(TGListTreeItem *item)
Sort items starting with item.
Bool_t fAutoCheckBoxPic
change check box picture if parent and children have diffrent state
void DrawNode(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y)
Draw node (little + in box).
TGListTreeItem * fFirst
pointer to first item in list
void AdjustPosition() override
Move content to position of highlighted/activated frame.
TBufferFile * fBuf
buffer used for Drag and Drop
Bool_t HandleDNDDrop(TDNDData *data) override
Handle drop events.
TGToolTip * fTip
tooltip shown when moving over list items
void DrawItemName(Handle_t id, TGListTreeItem *item)
Draw name of list tree item.
~TGListTree() override
Delete list tree widget.
void SaveChildren(std::ostream &out, const char *parent_var_name, TGListTreeItem *item)
Save child items as a C++ statements on output stream out.
Bool_t fUserControlled
let user decides what is the behaviour on events
TGListTreeItem * fCurrent
pointer to current item in list
virtual void UpdateChecked(TGListTreeItem *item, Bool_t redraw=kFALSE)
Update the state of the node 'item' according to the children states.
Int_t SearchChildren(TGListTreeItem *item, Int_t y, Int_t findy, TGListTreeItem **finditem)
Search child item.
virtual void MouseOver(TGListTreeItem *entry)
Signal emitted when pointer is over entry.
void HighlightItem(TGListTreeItem *item)
Highlight item.
Int_t fExposeTop
top y postion of visible region
TGListTreeItem * FindSiblingByName(TGListTreeItem *item, const char *name)
Find sibling of item by name.
TGListTreeItem * FindItemByPathname(const char *path)
Find item by pathname.
void Home(Bool_t select=kFALSE) override
Move content to the top.
void LineUp(Bool_t select=kFALSE) override
Move content one item-size up.
Int_t fVspacing
vertical spacing between items
FontStruct_t fFont
font used to draw item text
TGListTreeItem * FindChildByData(TGListTreeItem *item, void *userData)
Find child of item by userData.
void CloseItem(TGListTreeItem *item)
Close item in list tree (i.e. hide child items).
static FontStruct_t GetDefaultFontStruct()
Return default font structure in use.
void PDeleteItem(TGListTreeItem *item)
Delete given item.
void SetToolTipItem(TGListTreeItem *item, const char *string)
Set tooltip text for this item.
void PageDown(Bool_t select=kFALSE) override
Move content one page down.
Atom_t HandleDNDPosition(Int_t x, Int_t y, Atom_t action, Int_t xroot, Int_t yroot) override
Handle dragging position events.
void LineDown(Bool_t select=kFALSE) override
Move content one item-size down.
Int_t fIndent
number of pixels indentation
virtual void DrawOutline(Handle_t id, TGListTreeItem *item, Pixel_t col=0xbbbbbb, Bool_t clear=kFALSE)
Draw a outline of color 'col' around an item.
Bool_t fAutoTips
assume item->fUserData is TObject and use GetTitle() for tip text
TGListTreeItem * FindSiblingByData(TGListTreeItem *item, void *userData)
Find sibling of item by userData.
static const TGFont * fgDefaultFont
GContext_t fActiveGC
activated (selected) drawing context
static Pixel_t GetGrayPixel()
Return gray draw color in use.
void GetPathnameFromItem(TGListTreeItem *item, char *path, Int_t depth=0)
Get pathname from item.
void Draw(Handle_t id, Int_t yevent, Int_t hevent)
Draw list tree widget.
TGClient * fClient
Connection to display server.
Handle_t fId
X11/Win32 Window identifier.
The TGPicture class implements pictures and icons used in the different GUI elements and widgets.
void Draw(Option_t *="") override
Default Draw method for all objects.
const char * GetName() const override
Returns name of object.
ROOT GUI Window base class.
const TGWindow * fParent
Parent window.
@ kEditDisableBtnEnable
window can handle mouse button events
@ kEditDisableGrab
window grab cannot be edited
@ kEditDisable
disable edit of this window
virtual void SetWindowName(const char *name=nullptr)
Set window name.
const char * GetName() const override
Return unique name, used in SavePrimitive methods.
UInt_t fEditDisabled
flags used for "guibuilding"
void Add(TObject *obj) override
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
The TNamed class is the base class for all named ROOT classes.
const char * GetName() const override
Returns name of object.
Collectable string class.
Mother of all ROOT objects.
virtual const char * GetTitle() const
Returns title of object.
virtual TClass * IsA() const
void Emit(const char *signal, const T &arg)
Activate signal with single parameter.
Bool_t EndsWith(const char *pat, ECaseCompare cmp=kExact) const
Return true if string ends with the specified string.
TString & ReplaceSpecialCppChars()
Find special characters which are typically used in printf() calls and replace them by appropriate es...
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.
EGEventType fType
of event (see EGEventType)
Int_t fY
pointer x, y coordinates in event window
UInt_t fState
key or button mask
Int_t fYRoot
coordinates relative to root
Time_t fTime
time event event occurred in ms
UInt_t fCode
key or button code
Graphics context structure.
ULong_t fBackground
background pixel
Int_t fLineWidth
line width
Mask_t fMask
bit mask specifying which fields are valid
Int_t fLineStyle
kLineSolid, kLineOnOffDash, kLineDoubleDash
Bool_t fGraphicsExposures
boolean, should exposures be generated
ULong_t fForeground
foreground pixel
Int_t fFillStyle
kFillSolid, kFillTiled, kFillStippled, kFillOpaeueStippled
FontH_t fFont
default text font for text operations