Logo ROOT  
Reference Guide
TRootContextMenu.h
Go to the documentation of this file.
1// @(#)root/gui:$Id$
2// Author: Fons Rademakers 12/02/98
3
4/*************************************************************************
5 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TRootContextMenu
13#define ROOT_TRootContextMenu
14
15
16//////////////////////////////////////////////////////////////////////////
17// //
18// TRootContextMenu //
19// //
20// This class provides an interface to context sensitive popup menus. //
21// These menus pop up when the user hits the right mouse button, and //
22// are destroyed when the menu pops downs. //
23// //
24//////////////////////////////////////////////////////////////////////////
25
26#include "TContextMenuImp.h"
27#include "TGMenu.h"
28
29class TRootDialog;
30
31
33
34private:
35 TRootDialog *fDialog; // dialog prompting for command line arguments
36 TList *fTrash; // list of objects to be deleted before refilling menu
37
40 void CreateMenu(TObject *object);
41
42public:
43 TRootContextMenu(TContextMenu *c = 0, const char *name = "ROOT Context Menu");
44 virtual ~TRootContextMenu();
45
46 virtual void DisplayPopup(Int_t x, Int_t y);
47 virtual void Dialog(TObject *object, TMethod *method);
48 virtual void Dialog(TObject *object, TFunction *function);
49 virtual void DrawEntry(TGMenuEntry *entry);
50 TRootDialog *GetDialog() const { return fDialog; };
51 virtual Bool_t HandleButton(Event_t *event);
52 virtual Bool_t HandleCrossing(Event_t *event);
53 virtual Bool_t HandleMotion(Event_t *event);
54 virtual void OnlineHelp();
55 virtual void RecursiveRemove(TObject *obj);
56
57 Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
58
59protected:
60 TGPopupMenu * FindHierarchy(const char *commentstring, TString &last_component);
61 void AddEntrySorted(TGPopupMenu *current, const char *s, Int_t id, void *ud = 0,
62 const TGPicture *p = 0, Bool_t sorted = kTRUE);
63
64 ClassDef(TRootContextMenu,0) //ROOT native GUI context sensitive popup menu
65};
66
67#endif
#define c(i)
Definition: RSha256.hxx:101
int Int_t
Definition: RtypesCore.h:41
long Long_t
Definition: RtypesCore.h:50
bool Bool_t
Definition: RtypesCore.h:59
const Bool_t kTRUE
Definition: RtypesCore.h:87
#define ClassDef(name, id)
Definition: Rtypes.h:326
char name[80]
Definition: TGX11.cxx:109
This class provides an interface to GUI independent context sensitive popup menus.
This class provides an interface to context sensitive popup menus.
Definition: TContextMenu.h:40
Global functions class (global functions are obtained from CINT).
Definition: TFunction.h:28
A doubly linked list.
Definition: TList.h:44
Each ROOT class (see TClass) has a linked list of methods.
Definition: TMethod.h:38
Mother of all ROOT objects.
Definition: TObject.h:37
TGPopupMenu * FindHierarchy(const char *commentstring, TString &last_component)
Decodes the Hierarchy="Level0/Level1/Level2/..." statement from the comment field and returns the - i...
virtual void OnlineHelp()
Open the online help matching the actual class/method.
Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2)
Handle context menu messages.
virtual Bool_t HandleButton(Event_t *event)
Handle button event in the context menu.
void AddEntrySorted(TGPopupMenu *current, const char *s, Int_t id, void *ud=0, const TGPicture *p=0, Bool_t sorted=kTRUE)
Add a entry to current menu with alphabetical ordering.
TRootContextMenu & operator=(const TRootContextMenu &)
virtual void Dialog(TObject *object, TMethod *method)
Create dialog object with OK and Cancel buttons.
virtual Bool_t HandleMotion(Event_t *event)
Handle pointer motion event in context menu.
virtual void RecursiveRemove(TObject *obj)
Close the context menu if the object is deleted in the RecursiveRemove() operation.
virtual void DisplayPopup(Int_t x, Int_t y)
Display context popup menu for currently selected object.
void CreateMenu(TObject *object)
Create the context menu depending on the selected object.
TRootContextMenu(const TRootContextMenu &)
TRootDialog * fDialog
virtual ~TRootContextMenu()
Delete a context menu.
virtual void DrawEntry(TGMenuEntry *entry)
Draw context menu entry.
virtual Bool_t HandleCrossing(Event_t *event)
Handle pointer crossing event in context menu.
TRootDialog * GetDialog() const
Basic string class.
Definition: TString.h:131
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17
void function(const Char_t *name_, T fun, const Char_t *docstring=0)
Definition: RExports.h:151
static constexpr double s