Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGSplitButton Class Reference

Implements a button with added menu functionality.

There are 2 modes of operation available.

If the button is split, a menu will popup when the menu area of the button is clicked. Activating a menu item changes the functionality of the button by having it emit a additional signal when it is clicked. The signal emitted when the button is clicked, is the ItemClicked(Int_t) signal with a different fixed value for the Int_t that corresponds to the id of the activated menu entry.

If the button is not split, clicking it will popup the menu and the ItemClicked(Int_t) signal will be emitted when a menu entry is activated. The value of the Int_t is again equal to the value of the id of the activated menu entry.

The mode of operation of a SplitButton can be changed on the fly by calling the SetSplit(Bool_t) method.

Definition at line 378 of file TGButton.h.

Private Member Functions

 TGSplitButton (const TGSplitButton &)=delete
 
void CalcSize ()
 Calculate the size of the button.
 
void DrawTriangle (const GContext_t gc, Int_t x, Int_t y)
 Draw triangle (arrow) on which user can click to open Popup.
 
Bool_t HandleSButton (Event_t *event)
 Handle mouse button event in case the button is split.
 
Bool_t HandleSCrossing (Event_t *event)
 Handle mouse crossing event in case of split menu.
 
Bool_t HandleSKey (Event_t *event)
 Handle key event. This function will be called when the hotkey is hit.
 
TGSplitButtonoperator= (const TGSplitButton &)=delete
 
void SetMenuState (Bool_t state)
 Popup the attached menu.
 

Friends

class TGPopupMenu
 

Data members for menu functionality

Bool_t fSplit
 kTRUE if menu is in split mode
 
EButtonState fMBState
 state for menu button in split mode
 
UInt_t fTBWidth
 width of text button
 
UInt_t fMBWidth
 width of menu button
 
TGPopupMenufPopMenu
 pointer to popup menu
 
Int_t fEntryId
 Id of the currently active menu entry.
 
TGHotStringfMenuLabel
 Label of the menu;.
 
Cursor_t fDefaultCursor
 Default Cursor.
 
Bool_t fKeyNavigate
 kTRUE if key navigation is being used
 
TGString fWidestLabel
 longest label that can be on the button
 
TGString fHeighestLabel
 highest label that can be on the button
 
void DoRedraw () override
 @]
 
void Init ()
 Common initialization used by the different ctors.
 
void BindKeys (Bool_t on=kTRUE)
 If on kTRUE bind arrow, popup menu hot keys, otherwise remove key bindings.
 
void BindMenuKeys (Bool_t on=kTRUE)
 If on kTRUE bind Menu hot keys, otherwise remove key bindings.
 
 TGSplitButton (const TGWindow *p, TGHotString *menulabel, TGPopupMenu *popmenu, Bool_t split=kTRUE, Int_t id=-1, GContext_t norm=GetDefaultGC()(), FontStruct_t fontstruct=GetDefaultFontStruct(), UInt_t option=kRaisedFrame|kDoubleBorder)
 Create a menu button widget.
 
virtual ~TGSplitButton ()
 Delete a split button widget.
 
TGDimension GetDefaultSize () const override
 returns default size
 
void SetText (TGHotString *new_label) override
 Set new button text.
 
void SetText (const TString &new_label) override
 Set new button text.
 
void SetFont (FontStruct_t font, Bool_t global=kFALSE) override
 Changes text font.
 
void SetFont (const char *fontName, Bool_t global=kFALSE) override
 Changes text font specified by name.
 
virtual void SetMBState (EButtonState state)
 Set the state of the Menu Button part.
 
virtual void SetSplit (Bool_t split)
 Set the split status of a button.
 
Bool_t IsSplit ()
 
Bool_t HandleButton (Event_t *event) override
 Handle button events.
 
Bool_t HandleCrossing (Event_t *event) override
 Handle mouse crossing event.
 
Bool_t HandleKey (Event_t *event) override
 Handle key event. This function will be called when the hotkey is hit.
 
Bool_t HandleMotion (Event_t *event) override
 Handle a motion event in a TGSplitButton.
 
void Layout () override
 layout text button
 
virtual void MBPressed ()
 
virtual void MBReleased ()
 
virtual void MBClicked ()
 
virtual void ItemClicked (Int_t id)
 
void HandleMenu (Int_t id)
 Handle a menu item activation.
 
TClassIsA () const override
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static const char * Class_Name ()
 
static TClassClass ()
 

Additional Inherited Members

- Public Types inherited from TGWindow
enum  EEditMode {
  kEditEnable = 0 , kEditDisable = (1ULL << ( 0 )) , kEditDisableEvents = (1ULL << ( 1 )) , kEditDisableGrab = (1ULL << ( 2 )) ,
  kEditDisableLayout = (1ULL << ( 3 )) , kEditDisableResize = (1ULL << ( 4 )) , kEditDisableHeight = (1ULL << ( 5 )) , kEditDisableWidth = (1ULL << ( 6 )) ,
  kEditDisableBtnEnable = (1ULL << ( 7 )) , kEditDisableKeyEnable = (1ULL << ( 8 ))
}
 
enum  EStatusBits { kIsHtmlView = (1ULL << ( 14 )) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Public Member Functions inherited from TGTextButton
 TGTextButton (const TGWindow *p, const char *s, const char *cmd, Int_t id=-1, GContext_t norm=GetDefaultGC()(), FontStruct_t font=GetDefaultFontStruct(), UInt_t option=kRaisedFrame|kDoubleBorder)
 Create a text button widget and set cmd string at same time.
 
 TGTextButton (const TGWindow *p, TGHotString *s, Int_t id=-1, GContext_t norm=GetDefaultGC()(), FontStruct_t font=GetDefaultFontStruct(), UInt_t option=kRaisedFrame|kDoubleBorder)
 Create a text button widget.
 
 TGTextButton (const TGWindow *p=nullptr, const char *s=nullptr, Int_t id=-1, GContext_t norm=GetDefaultGC()(), FontStruct_t font=GetDefaultFontStruct(), UInt_t option=kRaisedFrame|kDoubleBorder)
 Create a text button widget.
 
virtual ~TGTextButton ()
 Delete a text button widget.
 
void ChangeText (const char *title)
 
Int_t GetBottomMargin () const
 
TGDimension GetDefaultSize () const override
 returns default size
 
FontStruct_t GetFontStruct () const
 
Int_t GetLeftMargin () const
 
Int_t GetRightMargin () const
 
TString GetString () const
 
const TGHotStringGetText () const
 
Int_t GetTextJustify () const
 
const char * GetTitle () const override
 Returns title of object.
 
Int_t GetTopMargin () const
 
Int_t GetWrapLength () const
 
Bool_t HandleKey (Event_t *event) override
 Handle key event. This function will be called when the hotkey is hit.
 
Bool_t HasOwnFont () const
 Returns kTRUE if text attributes are unique, returns kFALSE if text attributes are shared (global).
 
TClassIsA () const override
 
void Layout () override
 layout text button
 
void SavePrimitive (std::ostream &out, Option_t *option="") override
 Save a text button widget as a C++ statement(s) on output stream out.
 
virtual void SetBottomMargin (Int_t val)
 
void SetForegroundColor (Pixel_t fore) override
 
virtual void SetLeftMargin (Int_t val)
 
void SetMargins (Int_t left=0, Int_t right=0, Int_t top=0, Int_t bottom=0)
 
virtual void SetRightMargin (Int_t val)
 
virtual void SetTextColor (Pixel_t color, Bool_t global=kFALSE)
 Changes text color.
 
virtual void SetTextJustify (Int_t tmode)
 Set text justification.
 
virtual void SetTitle (const char *label)
 
virtual void SetTopMargin (Int_t val)
 
void SetWrapLength (Int_t wl)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TGButton
 TGButton (const TGWindow *p=nullptr, Int_t id=-1, GContext_t norm=GetDefaultGC()(), UInt_t option=kRaisedFrame|kDoubleBorder)
 Create button base class part.
 
virtual ~TGButton ()
 Delete button.
 
virtual void AllowStayDown (Bool_t a)
 
virtual void Clicked ()
 
TGButtonGroupGetGroup () const
 
GContext_t GetNormGC () const
 
virtual EButtonState GetState () const
 
virtual UInt_t GetStyle () const
 
virtual TGToolTipGetToolTip () const
 
virtual void * GetUserData () const
 
virtual Bool_t IsDown () const
 
virtual Bool_t IsExclusiveToggle () const
 
virtual Bool_t IsOn () const
 
virtual Bool_t IsToggleButton () const
 
virtual void Pressed ()
 
virtual void Released ()
 
virtual void SetDown (Bool_t on=kTRUE, Bool_t emit=kFALSE)
 
virtual void SetEnabled (Bool_t e=kTRUE)
 Set enabled or disabled state of button.
 
virtual void SetGroup (TGButtonGroup *gr)
 Sets new button-group for this button.
 
virtual void SetOn (Bool_t on=kTRUE, Bool_t emit=kFALSE)
 
virtual void SetState (EButtonState state, Bool_t emit=kFALSE)
 Set button state.
 
virtual void SetStyle (const char *style)
 Set the button style (modern or classic).
 
virtual void SetStyle (UInt_t newstyle)
 Set the button style (modern or classic).
 
virtual void SetToolTipText (const char *text, Long_t delayms=400)
 Set tool tip text associated with this button.
 
virtual void SetUserData (void *userData)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void Toggle (Bool_t emit=kFALSE)
 
virtual void Toggled (Bool_t on)
 
- Public Member Functions inherited from TGFrame
 TGFrame (const TGWindow *p=nullptr, UInt_t w=1, UInt_t h=1, UInt_t options=0, Pixel_t back=GetDefaultFrameBackground())
 Create a TGFrame object. Options is an OR of the EFrameTypes.
 
 TGFrame (TGClient *c, Window_t id, const TGWindow *parent=nullptr)
 Create a frame using an externally created window.
 
virtual ~TGFrame ()
 Destructor.
 
virtual void Activate (Bool_t)
 
void AddInput (UInt_t emask)
 Add events specified in the emask to the events the frame should handle.
 
virtual void ChangeBackground (Pixel_t back)
 Change frame background color.
 
virtual void ChangeOptions (UInt_t options)
 Change frame options. Options is an OR of the EFrameTypes.
 
Bool_t Contains (Int_t x, Int_t y) const
 
void Delete (Option_t *="") override
 Delete this object.
 
virtual void DeleteWindow ()
 Delete window.
 
virtual void DrawBorder ()
 Draw frame border.
 
void DrawClass () const override
 Draw class inheritance tree of the class to which this object belongs.
 
TObjectDrawClone (Option_t *="") const override
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void DrawCopy (Handle_t, Int_t, Int_t)
 
void Dump () const override
 Dump contents of object on stdout.
 
virtual Pixel_t GetBackground () const
 
Int_t GetBorderWidth () const
 
virtual UInt_t GetDefaultHeight () const
 
virtual UInt_t GetDefaultWidth () const
 
virtual TDNDDataGetDNDData (Atom_t)
 
virtual Int_t GetDragType () const
 Returns drag source type.
 
virtual Int_t GetDropType () const
 Returns drop target type.
 
UInt_t GetEventMask () const
 
virtual Pixel_t GetForeground () const
 Return frame foreground color.
 
TGFrameElementGetFrameElement () const
 
virtual TGFrameGetFrameFromPoint (Int_t x, Int_t y)
 
UInt_t GetHeight () const
 
UInt_t GetMaxHeight () const
 
UInt_t GetMaxWidth () const
 
UInt_t GetMinHeight () const
 
UInt_t GetMinWidth () const
 
virtual UInt_t GetOptions () const
 
TGDimension GetSize () const
 
UInt_t GetWidth () const
 
Int_t GetX () const
 
Int_t GetY () const
 
virtual Bool_t HandleClientMessage (Event_t *event)
 Handle a client message.
 
virtual Bool_t HandleColormapChange (Event_t *)
 
virtual Bool_t HandleConfigureNotify (Event_t *event)
 This event is generated when the frame is resized.
 
virtual Bool_t HandleDNDDrop (TDNDData *)
 
virtual Atom_t HandleDNDEnter (Atom_t *)
 
virtual Bool_t HandleDNDFinished ()
 
virtual Bool_t HandleDNDLeave ()
 
virtual Atom_t HandleDNDPosition (Int_t, Int_t, Atom_t, Int_t, Int_t)
 
virtual Bool_t HandleDoubleClick (Event_t *)
 
virtual Bool_t HandleDragDrop (TGFrame *, Int_t, Int_t, TGLayoutHints *)
 
virtual Bool_t HandleDragEnter (TGFrame *)
 
virtual Bool_t HandleDragLeave (TGFrame *)
 
virtual Bool_t HandleDragMotion (TGFrame *)
 
Bool_t HandleEvent (Event_t *event) override
 Handle all frame events.
 
virtual Bool_t HandleFocusChange (Event_t *)
 
virtual Bool_t HandleSelection (Event_t *)
 
virtual Bool_t HandleSelectionClear (Event_t *)
 
virtual Bool_t HandleSelectionRequest (Event_t *)
 
void Inspect () const override
 Dump contents of this object in a graphics canvas.
 
virtual Bool_t IsActive () const
 
virtual Bool_t IsComposite () const
 
Bool_t IsDNDSource () const
 
Bool_t IsDNDTarget () const
 
Bool_t IsEditable () const override
 
virtual Bool_t IsLayoutBroken () const
 
void MapRaised () override
 map raised
 
void MapSubwindows () override
 map sub windows
 
void MapWindow () override
 map window
 
void Move (Int_t x, Int_t y) override
 Move frame.
 
void MoveResize (Int_t x, Int_t y, UInt_t w=0, UInt_t h=0) override
 Move and/or resize the frame.
 
void Print (Option_t *option="") const override
 Print window id.
 
virtual void ProcessedConfigure (Event_t *event)
 
virtual void ProcessedEvent (Event_t *event)
 
virtual Bool_t ProcessMessage (Longptr_t, Longptr_t, Longptr_t)
 
virtual void ReallyDelete ()
 
void RemoveInput (UInt_t emask)
 Remove events specified in emask from the events the frame should handle.
 
void ReparentWindow (const TGWindow *p, Int_t x=0, Int_t y=0) override
 Reparent window, make p the new parent and position the window at position (x,y) in new parent.
 
virtual void Resize (TGDimension size)
 Resize the frame.
 
void Resize (UInt_t w=0, UInt_t h=0) override
 Resize the frame.
 
void SaveUserColor (std::ostream &out, Option_t *)
 Save a user color in a C++ macro file - used in SavePrimitive().
 
virtual void SendMessage (const TGWindow *w, Longptr_t msg, Longptr_t parm1, Longptr_t parm2)
 Send message (i.e.
 
void SetBackgroundColor (Pixel_t back) override
 Set background color (override from TGWindow base class).
 
virtual void SetCleanup (Int_t=kLocalCleanup)
 
void SetDNDSource (Bool_t onoff)
 
void SetDNDTarget (Bool_t onoff)
 
virtual void SetDragType (Int_t type)
 SetDragType.
 
void SetDrawOption (Option_t *="") override
 Set drawing option for object.
 
virtual void SetDropType (Int_t type)
 SetDropType.
 
void SetEditable (Bool_t) override
 
void SetFrameElement (TGFrameElement *fe)
 
virtual void SetHeight (UInt_t h)
 
virtual void SetLayoutBroken (Bool_t=kTRUE)
 
virtual void SetMaxHeight (UInt_t h)
 
virtual void SetMaxWidth (UInt_t w)
 
virtual void SetMinHeight (UInt_t h)
 
virtual void SetMinWidth (UInt_t w)
 
virtual void SetSize (const TGDimension &s)
 
virtual void SetWidth (UInt_t w)
 
virtual void SetX (Int_t x)
 
virtual void SetY (Int_t y)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void UnmapWindow () override
 unmap window
 
- Public Member Functions inherited from TGWindow
 TGWindow (const TGWindow *p=nullptr, Int_t x=0, Int_t y=0, UInt_t w=0, UInt_t h=0, UInt_t border=0, Int_t depth=0, UInt_t clss=0, void *visual=nullptr, SetWindowAttributes_t *attr=nullptr, UInt_t wtype=0)
 Create a new window.
 
 TGWindow (TGClient *c, Window_t id, const TGWindow *parent=nullptr)
 Create a copy of a window.
 
virtual ~TGWindow ()
 Window destructor. Unregisters the window.
 
virtual void DestroySubwindows ()
 destroy sub windows
 
virtual void DestroyWindow ()
 destroy window
 
virtual UInt_t GetEditDisabled () const
 
virtual const TGWindowGetMainFrame () const
 Returns top level main frame.
 
const char * GetName () const override
 Return unique name, used in SavePrimitive methods.
 
const TGWindowGetParent () const
 
virtual Bool_t HandleExpose (Event_t *event)
 
virtual Bool_t HandleIdleEvent (TGIdleHandler *)
 
Bool_t HandleTimer (TTimer *) override
 Execute action in response of a timer timing out.
 
virtual void IconifyWindow ()
 iconify window
 
TClassIsA () const override
 
virtual Bool_t IsMapped ()
 Returns kTRUE if window is mapped on screen, kFALSE otherwise.
 
virtual Bool_t IsMapSubwindows () const
 
virtual void LowerWindow ()
 lower window
 
virtual Int_t MustCleanup () const
 
void Print (Option_t *option="") const override
 Print window id.
 
virtual void RaiseWindow ()
 raise window
 
virtual void RequestFocus ()
 request focus
 
virtual void SetBackgroundPixmap (Pixmap_t pixmap)
 set background pixmap
 
virtual void SetEditDisabled (UInt_t on=kEditDisable)
 
virtual void SetMapSubwindows (Bool_t)
 
virtual void SetName (const char *name)
 
virtual void SetWindowName (const char *name=nullptr)
 Set window name.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TGObject
 TGObject ()
 
 TGObject (const TGObject &tgo)
 
virtual ~TGObject ()
 TGObject destructor.
 
TGClientGetClient () const
 
Handle_t GetId () const
 
ULong_t Hash () const override
 Return hash value for this object.
 
Bool_t IsEqual (const TObject *obj) const override
 Equal comparison (TGObjects are equal if they have the same window identifier).
 
void SaveAs (const char *filename="", Option_t *option="") const override
 Write this TGObject to a file using TImage, if filename's extension signals a valid TImage::EImageFileType, as defined by TImage::GetImageFileTypeFromFilename().
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout.
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification.
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TQObject
 TQObject ()
 TQObject Constructor.
 
virtual ~TQObject ()
 TQObject Destructor.
 
Bool_t AreSignalsBlocked () const
 
Bool_t BlockSignals (Bool_t b)
 
virtual void ChangedBy (const char *method)
 
void CollectClassSignalLists (TList &list, TClass *cls)
 Collect class signal lists from class cls and all its base-classes.
 
Bool_t Connect (const char *signal, const char *receiver_class, void *receiver, const char *slot)
 Non-static method is used to connect from the signal of this object to the receiver slot.
 
virtual void Connected (const char *)
 
virtual void Destroyed ()
 
Bool_t Disconnect (const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal of this object from slot of receiver.
 
virtual void Disconnected (const char *)
 
void Emit (const char *signal)
 Activate signal without args.
 
template<typename T >
void Emit (const char *signal, const T &arg)
 Activate signal with single parameter.
 
template<typename... T>
void EmitVA (const char *signal_name, Int_t, const T &... params)
 Emit a signal with a varying number of arguments.
 
TListGetListOfClassSignals () const
 Returns pointer to list of signals of this class.
 
TListGetListOfConnections () const
 
TListGetListOfSignals () const
 
virtual Bool_t HasConnection (const char *signal_name) const
 Return true if there is any object connected to this signal.
 
virtual void HighPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void LowPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void Message (const char *msg)
 
virtual Int_t NumberOfConnections () const
 Return number of connections for this object.
 
virtual Int_t NumberOfSignals () const
 Return number of signals for this object.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TGWidget
 TGWidget ()
 
 TGWidget (Int_t id)
 
virtual ~TGWidget ()
 
virtual void Associate (const TGWindow *w)
 
const char * GetCommand () const
 
Bool_t HasFocus () const
 
Bool_t IsEnabled () const
 
virtual void SetCommand (const char *command)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Bool_t WantFocus () const
 
Int_t WidgetId () const
 
- Static Public Member Functions inherited from TGTextButton
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static FontStruct_t GetDefaultFontStruct ()
 Return default font structure.
 
- Static Public Member Functions inherited from TGButton
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static const TGGCGetDefaultGC ()
 Return default graphics context.
 
static const TGGCGetHibckgndGC ()
 Return graphics context for highlighted frame background.
 
- Static Public Member Functions inherited from TGFrame
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static const TGGCGetBckgndGC ()
 Get background color graphics context.
 
static const TGGCGetBlackGC ()
 Get black graphics context.
 
static Pixel_t GetBlackPixel ()
 Get black pixel value.
 
static Pixel_t GetDefaultFrameBackground ()
 Get default frame background.
 
static Pixel_t GetDefaultSelectedBackground ()
 Get default selected frame background.
 
static const TGGCGetHilightGC ()
 Get highlight color graphics context.
 
static const TGGCGetShadowGC ()
 Get shadow color graphics context.
 
static const TGGCGetWhiteGC ()
 Get white graphics context.
 
static Pixel_t GetWhitePixel ()
 Get white pixel value.
 
- Static Public Member Functions inherited from TGWindow
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Int_t GetCounter ()
 Return global window counter (total number of created windows).
 
- Static Public Member Functions inherited from TGObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TQObject
static Bool_t AreAllSignalsBlocked ()
 Returns true if all signals are blocked.
 
static Bool_t BlockAllSignals (Bool_t b)
 Block or unblock all signals. Returns the previous block status.
 
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static Bool_t Connect (const char *sender_class, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 This method allows to make a connection from any object of the same class to a single slot.
 
static Bool_t Connect (TQObject *sender, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 
static const char * DeclFileName ()
 
static Bool_t Disconnect (const char *class_name, const char *signal, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects "class signal".
 
static Bool_t Disconnect (TQObject *sender, const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal in object sender from slot_method in object receiver.
 
- Static Public Member Functions inherited from TGWidget
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Protected Types inherited from TGFrame
enum  { kDeleteWindowCalled = (1ULL << ( 15 )) }
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Member Functions inherited from TGTextButton
void DoRedraw () override
 Draw the text button.
 
void Init ()
 Common initialization used by the different ctors.
 
- Protected Member Functions inherited from TGButton
virtual void EmitSignals (Bool_t wasUp)
 Emit button signals.
 
virtual void SetToggleButton (Bool_t)
 
- Protected Member Functions inherited from TGFrame
virtual void Draw3dRectangle (UInt_t type, Int_t x, Int_t y, UInt_t w, UInt_t h)
 Draw 3D rectangle on the frame border.
 
TString GetOptionString () const
 Returns a frame option string - used in SavePrimitive().
 
const TGResourcePoolGetResourcePool () const
 
void * GetSender () override
 
virtual void StartGuiBuilding (Bool_t on=kTRUE)
 Go into GUI building mode.
 
- Protected Member Functions inherited from TGWindow
 TGWindow (const TGWindow &tgw)
 
 TGWindow (Window_t id)
 
TGWindowoperator= (const TGWindow &tgw)
 
- Protected Member Functions inherited from TGObject
TGObjectoperator= (const TGObject &tgo)
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Member Functions inherited from TQObject
virtual const char * GetSenderClassName () const
 
- Protected Member Functions inherited from TGWidget
 TGWidget (const TGWidget &tgw)
 
Int_t ClearFlags (Int_t flags)
 
TGWidgetoperator= (const TGWidget &tgw)
 
Int_t SetFlags (Int_t flags)
 
- Static Protected Member Functions inherited from TGFrame
static Time_t GetLastClick ()
 Get time of last mouse click.
 
- Static Protected Member Functions inherited from TQObject
static Int_t CheckConnectArgs (TQObject *sender, TClass *sender_class, const char *signal, TClass *receiver_class, const char *slot)
 Checking of consistency of sender/receiver methods/arguments.
 
static TString CompressName (const char *method_name)
 Removes "const" words and blanks from full (with prototype) method name and resolve any typedefs in the method signature.
 
static Bool_t ConnectToClass (const char *sender_class, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 This method allows to make connection from any object of the same class to the receiver object.
 
static Bool_t ConnectToClass (TQObject *sender, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 
- Protected Attributes inherited from TGTextButton
FontStruct_t fFontStruct
 
Bool_t fHasOwnFont
 
Int_t fHKeycode
 
TGHotStringfLabel
 
Int_t fMBottom
 
Int_t fMLeft
 
Int_t fMRight
 
Int_t fMTop
 
Bool_t fPrevStateOn
 
Bool_t fStateOn
 
TGTextLayoutfTLayout
 
Int_t fTMode
 
Int_t fWrapLength
 
- Protected Attributes inherited from TGButton
Pixel_t fBgndColor
 actual background color
 
TGButtonGroupfGroup
 button group this button belongs to
 
Pixel_t fHighColor
 highlight color
 
GContext_t fNormGC
 graphics context used for drawing button
 
EButtonState fState
 button state
 
Bool_t fStayDown
 true if button has to stay down
 
UInt_t fStyle
 button style (modern or classic)
 
UInt_t fTHeight
 button height
 
TGToolTipfTip
 tool tip associated with button
 
UInt_t fTWidth
 button width
 
void * fUserData
 pointer to user data structure
 
- Protected Attributes inherited from TGFrame
Pixel_t fBackground
 frame background color
 
Int_t fBorderWidth
 frame border width
 
Int_t fDNDState
 EDNDFlags.
 
UInt_t fEventMask
 currently active event mask
 
TGFrameElementfFE
 pointer to frame element
 
UInt_t fHeight
 frame height
 
UInt_t fMaxHeight
 maximal frame height
 
UInt_t fMaxWidth
 maximal frame width
 
UInt_t fMinHeight
 minimal frame height
 
UInt_t fMinWidth
 minimal frame width
 
UInt_t fOptions
 frame options
 
UInt_t fWidth
 frame width
 
Int_t fX
 frame x position
 
Int_t fY
 frame y position
 
- Protected Attributes inherited from TGWindow
UInt_t fEditDisabled
 flags used for "guibuilding"
 
TString fName
 name of the window used in SavePrimitive()
 
Bool_t fNeedRedraw
 kTRUE if window needs to be redrawn
 
const TGWindowfParent
 Parent window.
 
- Protected Attributes inherited from TGObject
TGClientfClient
 Connection to display server.
 
Handle_t fId
 X11/Win32 Window identifier.
 
- Protected Attributes inherited from TQObject
TListfListOfConnections
 list of signals from this object
 
TListfListOfSignals
 
Bool_t fSignalsBlocked
 list of connections to this object
 
- Protected Attributes inherited from TGWidget
TString fCommand
 command to be executed
 
const TGWindowfMsgWindow
 window which handles widget events
 
Int_t fWidgetFlags
 widget status flags (OR of EWidgetStatus)
 
Int_t fWidgetId
 the widget id (used for event processing)
 
- Static Protected Attributes inherited from TGTextButton
static const TGFontfgDefaultFont = nullptr
 
- Static Protected Attributes inherited from TGButton
static const TGGCfgDefaultGC = nullptr
 
static const TGGCfgHibckgndGC = nullptr
 
static Window_t fgReleaseBtn = 0
 
- Static Protected Attributes inherited from TGFrame
static const TGGCfgBckgndGC = nullptr
 
static const TGGCfgBlackGC = nullptr
 
static Pixel_t fgBlackPixel = 0
 
static Window_t fgDbw = 0
 
static Int_t fgDbx = 0
 
static Int_t fgDby = 0
 
static Pixel_t fgDefaultFrameBackground = 0
 
static Pixel_t fgDefaultSelectedBackground = 0
 
static const TGGCfgHilightGC = nullptr
 
static Bool_t fgInit = kFALSE
 
static UInt_t fgLastButton = 0
 
static Time_t fgLastClick = 0
 
static const TGGCfgShadowGC = nullptr
 
static UInt_t fgUserColor = 0
 
static const TGGCfgWhiteGC = nullptr
 
static Pixel_t fgWhitePixel = 0
 
- Static Protected Attributes inherited from TGWindow
static Int_t fgCounter = 0
 counter of created windows in SavePrimitive
 
- Static Protected Attributes inherited from TQObject
static Bool_t fgAllSignalsBlocked = kFALSE
 flag used for suppression of signals
 

#include <TGButton.h>

Inheritance diagram for TGSplitButton:
[legend]

Constructor & Destructor Documentation

◆ TGSplitButton() [1/2]

TGSplitButton::TGSplitButton ( const TGSplitButton )
privatedelete

◆ TGSplitButton() [2/2]

TGSplitButton::TGSplitButton ( const TGWindow p,
TGHotString menulabel,
TGPopupMenu popmenu,
Bool_t  split = kTRUE,
Int_t  id = -1,
GContext_t  norm = GetDefaultGC()(),
FontStruct_t  fontstruct = GetDefaultFontStruct(),
UInt_t  options = kRaisedFrame | kDoubleBorder 
)

Create a menu button widget.

The hotstring will be adopted and deleted by the menu button. This constructor creates a menubutton with a popup menu attached that appears when the button for it is clicked. The popup menu is adopted.

Definition at line 2173 of file TGButton.cxx.

◆ ~TGSplitButton()

TGSplitButton::~TGSplitButton ( )
virtual

Delete a split button widget.

Definition at line 2311 of file TGButton.cxx.

Member Function Documentation

◆ BindKeys()

void TGSplitButton::BindKeys ( Bool_t  on = kTRUE)
protected

If on kTRUE bind arrow, popup menu hot keys, otherwise remove key bindings.

Definition at line 2720 of file TGButton.cxx.

◆ BindMenuKeys()

void TGSplitButton::BindMenuKeys ( Bool_t  on = kTRUE)
protected

If on kTRUE bind Menu hot keys, otherwise remove key bindings.

Definition at line 2732 of file TGButton.cxx.

◆ CalcSize()

void TGSplitButton::CalcSize ( )
private

Calculate the size of the button.

Definition at line 2337 of file TGButton.cxx.

◆ Class()

static TClass * TGSplitButton::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGSplitButton::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGSplitButton::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 446 of file TGButton.h.

◆ DeclFileName()

static const char * TGSplitButton::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 446 of file TGButton.h.

◆ DoRedraw()

void TGSplitButton::DoRedraw ( )
overrideprotectedvirtual

@]

Draw the text button.

Reimplemented from TGFrame.

Definition at line 2614 of file TGButton.cxx.

◆ DrawTriangle()

void TGSplitButton::DrawTriangle ( const GContext_t  gc,
Int_t  x,
Int_t  y 
)
private

Draw triangle (arrow) on which user can click to open Popup.

Definition at line 2320 of file TGButton.cxx.

◆ GetDefaultSize()

TGDimension TGSplitButton::GetDefaultSize ( ) const
overridevirtual

returns default size

Reimplemented from TGFrame.

Definition at line 2757 of file TGButton.cxx.

◆ HandleButton()

Bool_t TGSplitButton::HandleButton ( Event_t event)
overridevirtual

Handle button events.

Reimplemented from TGButton.

Definition at line 2932 of file TGButton.cxx.

◆ HandleCrossing()

Bool_t TGSplitButton::HandleCrossing ( Event_t event)
overridevirtual

Handle mouse crossing event.

Reimplemented from TGButton.

Definition at line 3012 of file TGButton.cxx.

◆ HandleKey()

Bool_t TGSplitButton::HandleKey ( Event_t event)
overridevirtual

Handle key event. This function will be called when the hotkey is hit.

Reimplemented from TGFrame.

Definition at line 3024 of file TGButton.cxx.

◆ HandleMenu()

void TGSplitButton::HandleMenu ( Int_t  id)

Handle a menu item activation.

Definition at line 3214 of file TGButton.cxx.

◆ HandleMotion()

Bool_t TGSplitButton::HandleMotion ( Event_t event)
overridevirtual

Handle a motion event in a TGSplitButton.

Reimplemented from TGFrame.

Definition at line 3158 of file TGButton.cxx.

◆ HandleSButton()

Bool_t TGSplitButton::HandleSButton ( Event_t event)
private

Handle mouse button event in case the button is split.

Definition at line 2352 of file TGButton.cxx.

◆ HandleSCrossing()

Bool_t TGSplitButton::HandleSCrossing ( Event_t event)
private

Handle mouse crossing event in case of split menu.

Definition at line 2483 of file TGButton.cxx.

◆ HandleSKey()

Bool_t TGSplitButton::HandleSKey ( Event_t event)
private

Handle key event. This function will be called when the hotkey is hit.

Definition at line 2525 of file TGButton.cxx.

◆ Init()

void TGSplitButton::Init ( )
protected

Common initialization used by the different ctors.

Definition at line 2267 of file TGButton.cxx.

◆ IsA()

TClass * TGSplitButton::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TGButton.

Definition at line 446 of file TGButton.h.

◆ IsSplit()

Bool_t TGSplitButton::IsSplit ( )
inline

Definition at line 431 of file TGButton.h.

◆ ItemClicked()

virtual void TGSplitButton::ItemClicked ( Int_t  id)
inlinevirtual

Definition at line 441 of file TGButton.h.

◆ Layout()

void TGSplitButton::Layout ( )
overridevirtual

layout text button

Reimplemented from TGFrame.

Definition at line 3182 of file TGButton.cxx.

◆ MBClicked()

virtual void TGSplitButton::MBClicked ( )
inlinevirtual

Definition at line 440 of file TGButton.h.

◆ MBPressed()

virtual void TGSplitButton::MBPressed ( )
inlinevirtual

Definition at line 438 of file TGButton.h.

◆ MBReleased()

virtual void TGSplitButton::MBReleased ( )
inlinevirtual

Definition at line 439 of file TGButton.h.

◆ operator=()

TGSplitButton & TGSplitButton::operator= ( const TGSplitButton )
privatedelete

◆ SetFont() [1/2]

void TGSplitButton::SetFont ( const char *  fontName,
Bool_t  global = kFALSE 
)
overridevirtual

Changes text font specified by name.

If global is true color is changed globally, otherwise - locally.

Reimplemented from TGTextButton.

Definition at line 2872 of file TGButton.cxx.

◆ SetFont() [2/2]

void TGSplitButton::SetFont ( FontStruct_t  font,
Bool_t  global = kFALSE 
)
overridevirtual

Changes text font.

If global is kTRUE font is changed globally, otherwise - locally.

Reimplemented from TGTextButton.

Definition at line 2846 of file TGButton.cxx.

◆ SetMBState()

void TGSplitButton::SetMBState ( EButtonState  state)
virtual

Set the state of the Menu Button part.

Definition at line 2883 of file TGButton.cxx.

◆ SetMenuState()

void TGSplitButton::SetMenuState ( Bool_t  state)
private

Popup the attached menu.

Definition at line 2573 of file TGButton.cxx.

◆ SetSplit()

void TGSplitButton::SetSplit ( Bool_t  split)
virtual

Set the split status of a button.

Definition at line 2894 of file TGButton.cxx.

◆ SetText() [1/2]

void TGSplitButton::SetText ( const TString new_label)
overridevirtual

Set new button text.

Reimplemented from TGTextButton.

Definition at line 2837 of file TGButton.cxx.

◆ SetText() [2/2]

void TGSplitButton::SetText ( TGHotString new_label)
overridevirtual

Set new button text.

Reimplemented from TGTextButton.

Definition at line 2767 of file TGButton.cxx.

◆ Streamer()

void TGSplitButton::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TGButton.

◆ StreamerNVirtual()

void TGSplitButton::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 446 of file TGButton.h.

Friends And Related Symbol Documentation

◆ TGPopupMenu

friend class TGPopupMenu
friend

Definition at line 380 of file TGButton.h.

Member Data Documentation

◆ fDefaultCursor

Cursor_t TGSplitButton::fDefaultCursor
protected

Default Cursor.

Definition at line 403 of file TGButton.h.

◆ fEntryId

Int_t TGSplitButton::fEntryId
protected

Id of the currently active menu entry.

Definition at line 401 of file TGButton.h.

◆ fHeighestLabel

TGString TGSplitButton::fHeighestLabel
protected

highest label that can be on the button

Definition at line 406 of file TGButton.h.

◆ fKeyNavigate

Bool_t TGSplitButton::fKeyNavigate
protected

kTRUE if key navigation is being used

Definition at line 404 of file TGButton.h.

◆ fMBState

EButtonState TGSplitButton::fMBState
protected

state for menu button in split mode

Definition at line 397 of file TGButton.h.

◆ fMBWidth

UInt_t TGSplitButton::fMBWidth
protected

width of menu button

Definition at line 399 of file TGButton.h.

◆ fMenuLabel

TGHotString* TGSplitButton::fMenuLabel
protected

Label of the menu;.

Definition at line 402 of file TGButton.h.

◆ fPopMenu

TGPopupMenu* TGSplitButton::fPopMenu
protected

pointer to popup menu

Definition at line 400 of file TGButton.h.

◆ fSplit

Bool_t TGSplitButton::fSplit
protected

kTRUE if menu is in split mode

Definition at line 396 of file TGButton.h.

◆ fTBWidth

UInt_t TGSplitButton::fTBWidth
protected

width of text button

Definition at line 398 of file TGButton.h.

◆ fWidestLabel

TGString TGSplitButton::fWidestLabel
protected

longest label that can be on the button

Definition at line 405 of file TGButton.h.

Libraries for TGSplitButton:

The documentation for this class was generated from the following files: