TGContainer
class description - source file - inheritance tree
protected:
virtual void ActivateItem(TGFrameElement* el)
virtual void ClearViewPort()
virtual void DoRedraw()
virtual void End(Bool_t select = kFALSE)
virtual void* FindItem(const TString& name, Bool_t direction = kTRUE, Bool_t caseSensitive = kTRUE, Bool_t beginWith = kFALSE)
virtual void Home(Bool_t select = kFALSE)
virtual void LineDown(Bool_t select = kFALSE)
virtual void LineLeft(Bool_t select = kFALSE)
virtual void LineRight(Bool_t select = kFALSE)
virtual void LineUp(Bool_t select = kFALSE)
virtual void OnAutoScroll()
virtual void PageDown(Bool_t select = kFALSE)
virtual void PageUp(Bool_t select = kFALSE)
virtual void RepeatSearch()
virtual void Search()
virtual void SearchPattern()
public:
TGContainer(const TGWindow* p, UInt_t w, UInt_t h, UInt_t options = kSunkenFrame, ULong_t back = GetDefaultFrameBackground())
TGContainer(TGCanvas* p, UInt_t options = kSunkenFrame, ULong_t back = GetDefaultFrameBackground())
TGContainer(const TGContainer&)
virtual ~TGContainer()
virtual void AdjustPosition()
virtual void Associate(const TGWindow* w)
static TClass* Class()
virtual void Clicked(TGFrame* f, Int_t btn)
virtual void Clicked(TGFrame* f, Int_t btn, Int_t x, Int_t y)
virtual void CurrentChanged(Int_t x, Int_t y)
virtual void CurrentChanged(TGFrame* f)
virtual void DoubleClicked(TGFrame* f, Int_t btn)
virtual void DoubleClicked(TGFrame* f, Int_t btn, Int_t x, Int_t y)
virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h)
virtual TGFrameElement* FindFrame(Int_t x, Int_t y, Bool_t exclude = kTRUE)
virtual TGFrame* GetLastActive() const
const TGWindow* GetMessageWindow() const
virtual const TGFrame* GetNextSelected(void** current) const
TGDimension GetPageDimension() const
TGPosition GetPagePosition() const
virtual Bool_t HandleButton(Event_t* event)
virtual Bool_t HandleDoubleClick(Event_t* event)
virtual Bool_t HandleExpose(Event_t* event)
virtual Bool_t HandleKey(Event_t* event)
virtual Bool_t HandleMotion(Event_t* event)
virtual void InvertSelection()
virtual TClass* IsA() const
virtual Bool_t IsMapSubwindows() const
virtual void Layout()
virtual void MapSubwindows()
virtual Int_t NumItems() const
virtual Int_t NumSelected() const
virtual void OnMouseOver(TGFrame*)
virtual void RemoveAll()
virtual void RemoveItem(TGFrame* item)
virtual void ReturnPressed(TGFrame*)
virtual void SelectAll()
virtual void SetPageDimension(const TGDimension& dim)
virtual void SetPageDimension(UInt_t w, UInt_t h)
virtual void SetPagePosition(const TGPosition& pos)
virtual void SetPagePosition(Int_t x, Int_t y)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void SpacePressed(TGFrame*)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
virtual void UnSelectAll()
protected:
TGViewPort* fViewPort container viewport
TGCanvas* fCanvas pointer to canvas
const TGWindow* fMsgWindow window handling container messages
TGFrameElement* fLastActiveEl last active item
Int_t fXp
Int_t fYp previous pointer position
Int_t fX0
Int_t fY0 corner of rubber band box
Int_t fXf
Int_t fYf other corner of rubber band box
Bool_t fDragging true if in dragging mode
Int_t fTotal total items
Int_t fSelected number of selected items
TTimer* fScrollTimer autoscroll timer
Bool_t fMapSubwindows kTRUE - map subwindows
Bool_t fOnMouseOver kTRUE when mouse pointer is over entry
TGSearchType* fSearch structure used by search dialog
Bool_t fLastDir direction of last search
Bool_t fLastCase case sensetivity of last search
TString fLastName the name of object of last search
TTimer* fKeyTimer keyboard timer
TString fKeyInput keyboard input (buffer)
Bool_t fKeyTimerActive kTRUE - keyboard timer is active
Bool_t fScrolling kTRUE - when scrolling is ON
static TGGC fgLineGC
See also
-
TGLVContainer, TGListTree
TGCanvas and TGViewPort and TGContainer
A TGCanvas is a frame containing two scrollbars (a horizontal and
a vertical) and a viewport. The viewport acts as the window through
which we look at the contents of the container frame.
A TGContainer frame manages a content area. It can display and
control a hierarchy of multi-column items, and provides the ability
to add new items at any time. By default it doesn't map subwindows
which are items of the container. In this case subwindow must
provide DrawCopy method, see for example TGLVEntry class.
It is also possible to use option which allow to map subwindows.
This option has much slower drawing speed in case of more than 1000
items placed in container. To activate this option the fMapSubwindows
data member must be set to kTRUE (for example TTVLVContainer class)
The TGContainer class can handle the keys:
o F7, Ctnrl-F - activate search dialog
o F3, Ctnrl-G - continue search
o End - go to the last item in container
o Home - go to the first item in container
o PageUp,PageDown,arrow keys - navigate inside container
o Return/Enter - equivalent to double click of the mouse button
o Contrl-A - select/activate all items.
o Space - invert selection.
TGContainer(const TGWindow *p, UInt_t w, UInt_t h,
UInt_t options, ULong_t back) :
TGCompositeFrame(p, w, h, options, back)
Create a canvas container. This is the (large) frame that contains
all the list items. It will be shown through a TGViewPort (which is
created by the TGCanvas).
TGContainer(TGCanvas *p, UInt_t options, ULong_t back) :
TGCompositeFrame(p->GetViewPort(),p->GetWidth(),p->GetHeight(),options,back)
Create a canvas container. This is the (large) frame that contains
all the list items. It will be shown through a TGViewPort (which is
created by the TGCanvas).
~TGContainer()
Delete canvas container.
void Layout()
Layout container entries.
void CurrentChanged(Int_t x,Int_t y)
Emit signal when current position changed.
void CurrentChanged(TGFrame* f)
Emit signal when current selected frame changed.
void ReturnPressed(TGFrame* f)
Signal emitted when Return/Enter key pressed.
It's equivalent to "double click" of mouse button.
void SpacePressed(TGFrame* f)
Signal emitted when space key pressed.
Pressing space key inverts selection.
void OnMouseOver(TGFrame* f)
Signal emitted when pointer is over entry.
void Clicked(TGFrame *entry, Int_t btn)
Emit Clicked() signal.
void Clicked(TGFrame *entry, Int_t btn, Int_t x, Int_t y)
Emit Clicked() signal.
void DoubleClicked(TGFrame *entry, Int_t btn)
Emit DoubleClicked() signal.
void DoubleClicked(TGFrame *entry, Int_t btn, Int_t x, Int_t y)
Emit DoubleClicked() signal.
void SelectAll()
Select all items in the container.
SelectAll() signal emitted.
void UnSelectAll()
Unselect all items in the container.
void InvertSelection()
Invert the selection, all selected items become unselected and
vice versa.
void RemoveAll()
Remove all items from the container.
void RemoveItem(TGFrame *item)
Remove item from container.
const TGFrame* GetNextSelected(void **current)
Return next selected item.
void ActivateItem(TGFrameElement* el)
Activate item.
TGPosition GetPagePosition() const
Returns page position.
TGDimension GetPageDimension() const
Returns page dimension.
void SetPagePosition(const TGPosition& pos)
Set page position.
void SetPagePosition(Int_t x, Int_t y)
Set page position.
void SetPageDimension(const TGDimension& dim)
Set page dimension.
void SetPageDimension(UInt_t w, UInt_t h)
Set page dimension.
void MapSubwindows()
Map subwindows.
void DoRedraw()
Redraw content of container in the viewport region.
void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h)
Draw a region of container in viewport.
void ClearViewPort()
Clear view port.
Bool_t HandleExpose(Event_t *event)
Handle expose events. Do not use double buffer.
Bool_t HandleButton(Event_t *event)
Handle mouse button event in container.
Bool_t HandleDoubleClick(Event_t *event)
Handle double click mouse event.
Bool_t HandleMotion(Event_t *event)
Handle mouse motion events.
Bool_t HandleKey(Event_t *event)
The key press event handler converts a key press to some line editor
action.
void Search()
Invokes search dialog. Looks for item with the entered name.
void OnAutoScroll()
Autoscroll while close to & beyond The Wall
void SearchPattern()
Search for entry which name begins with pattern.
void RepeatSearch()
Repeats search.
TGFrameElement* FindFrame(Int_t x,Int_t y,Bool_t exclude)
Find frame located int container at position x,y.
void* FindItem(const TString& name, Bool_t direction,
Bool_t caseSensitive, Bool_t beginWith)
void AdjustPosition()
Move content to position of highlighted/activated frame.
void LineLeft(Bool_t select)
Move current position one column left.
void LineRight(Bool_t select)
Move current position one column right.
void LineUp(Bool_t select)
Make current position first line in window by scrolling up.
void LineDown(Bool_t select)
Move one line down.
void PageUp(Bool_t select)
Move position one page up.
void PageDown(Bool_t select)
Move position one page down.
void Home(Bool_t select)
Move to upper-left corner of container.
void End(Bool_t select)
Move to the bottom-right corner of container.
Inline Functions
void Associate(const TGWindow* w)
const TGWindow* GetMessageWindow() const
Bool_t IsMapSubwindows() const
Int_t NumSelected() const
Int_t NumItems() const
TGFrame* GetLastActive() const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TGContainer TGContainer(const TGContainer&)
Author: Fons Rademakers 11/01/98
Last update: root/gui:$Name: $:$Id: TGCanvas.cxx,v 1.16 2003/05/12 16:44:08 rdm Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.