diff --git a/gui/gui/src/TRootBrowserLite.cxx b/gui/gui/src/TRootBrowserLite.cxx index dda778d15efdb28a22e804994af9f1db4685cf4f..74a9e13734dc5d91b2ed845b7f12373b56532f8d 100644 --- a/gui/gui/src/TRootBrowserLite.cxx +++ b/gui/gui/src/TRootBrowserLite.cxx @@ -1443,14 +1443,11 @@ void TRootBrowserLite::AddToTree(TObject *obj, const char *name, Int_t check) top = top->GetParent(); } } - if (isRemote) { - // add the remote object only if not already in the list - if ((!fLt->FindChildByName(fListLevel, name)) && - (!fLt->FindChildByData(fListLevel, obj))) - fLt->AddItem(fListLevel, name, obj); - } - else + // add the object only if not already in the list + if ((!fLt->FindChildByName(fListLevel, name)) && + (!fLt->FindChildByData(fListLevel, obj))) { fLt->AddItem(fListLevel, name, obj); + } } } } @@ -1996,8 +1993,6 @@ Bool_t TRootBrowserLite::ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2) TObject *obj2 = 0; if ((item2 = fLt->GetSelected()) != 0 ) { ListTreeHighlight(item2); - obj2 = (TObject *) item2->GetUserData(); - fStatusBar->SetText("", 1); // clear } if (item2 && parm1 == kButton3) { @@ -2304,13 +2299,17 @@ void TRootBrowserLite::ListTreeHighlight(TGListTreeItem *item) if (obj) { if (obj->IsA() == TKey::Class()) { + TKey *key = (TKey *)obj; + TString name = obj->GetName(); + name += ";"; + name += key->GetCycle(); Chdir(item->GetParent()); - TObject *k_obj = gROOT->FindObject(obj->GetName()); + TObject *k_obj = gROOT->FindObject(name); if (k_obj) { TGListTreeItem *parent = item->GetParent(); DeleteListTreeItem(item); - TGListTreeItem *itm = fLt->AddItem(parent, k_obj->GetName(), k_obj); + TGListTreeItem *itm = fLt->AddItem(parent, name, k_obj); if (itm) { itm->SetUserData(k_obj); item = itm; @@ -2647,8 +2646,11 @@ void TRootBrowserLite::RecursiveRemove(TObject *obj) // via TBrowser::Refresh() which should be called once all objects have // been removed. - if (fListLevel && (fListLevel->GetUserData() == obj)) { - TGListTreeItem *parent = fListLevel->GetParent(); + TGListTreeItem *item = fLt->FindItemByObj(fLt->GetFirstItem(), obj); + if (item == 0) + return; + if (fListLevel && (item == fListLevel)) { + TGListTreeItem *parent = item->GetParent(); if (parent) { fListLevel = parent; fLt->ClearHighlighted(); @@ -2658,8 +2660,7 @@ void TRootBrowserLite::RecursiveRemove(TObject *obj) else fListLevel = 0; } - if (fHistory) fHistory->RecursiveRemove(obj); - fLt->RecursiveDeleteItem(fLt->GetFirstItem(), obj); + DeleteListTreeItem(item); } //______________________________________________________________________________