ROOT  6.06/09
Reference Guide
TGFrame.h
Go to the documentation of this file.
1 // @(#)root/gui:$Id$
2 // Author: Fons Rademakers 03/01/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_TGFrame
13 #define ROOT_TGFrame
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TGFrame, TGCompositeFrame, TGVerticalFrame, TGHorizontalFrame, //
19 // TGMainFrame, TGTransientFrame and TGGroupFrame //
20 // //
21 // This header contains all different Frame classes. //
22 // //
23 //////////////////////////////////////////////////////////////////////////
24 
25 #ifndef ROOT_TGWindow
26 #include "TGWindow.h"
27 #endif
28 #ifndef ROOT_TQObject
29 #include "TQObject.h"
30 #endif
31 #ifndef ROOT_TGDimension
32 #include "TGDimension.h"
33 #endif
34 #ifndef ROOT_TGGC
35 #include "TGGC.h"
36 #endif
37 #ifndef ROOT_TGFont
38 #include "TGFont.h"
39 #endif
40 #ifndef ROOT_TGLayout
41 #include "TGLayout.h"
42 #endif
43 #ifndef ROOT_TGString
44 #include "TGString.h"
45 #endif
46 #ifndef ROOT_TList
47 #include "TList.h"
48 #endif
49 
50 class TGResourcePool;
51 class TGTextButton;
52 class TGVFileSplitter;
53 class TDNDData;
54 
55 //---- frame states
56 
61 };
62 
63 //---- frame cleanup
68 };
69 
70 //---- types of frames (and borders)
71 
72 enum EFrameType {
80  kFitWidth = BIT(6),
87  kTempFrame = BIT(12),
89  kMdiFrame = BIT(14)
90 };
91 
92 //---- MWM hints stuff
93 
94 enum EMWMHints {
95  // functions
102 
103  // input mode
108 
109  // decorations
117 };
118 
119 //---- drag and drop
120 
121 enum EDNDFlags {
124 };
125 
126 
127 
128 //////////////////////////////////////////////////////////////////////////
129 // //
130 // TGFrame //
131 // //
132 // This class subclasses TGWindow, used as base class for some simple //
133 // widgets (buttons, labels, etc.). //
134 // It provides: //
135 // - position & dimension fields //
136 // - an 'options' attribute (see constant above) //
137 // - a generic event handler //
138 // - a generic layout mechanism //
139 // - a generic border //
140 // //
141 //////////////////////////////////////////////////////////////////////////
142 
143 class TGFrame : public TGWindow, public TQObject {
144 
145 protected:
146  enum { kDeleteWindowCalled = BIT(15) };
147 
148  Int_t fX; // frame x position
149  Int_t fY; // frame y position
150  UInt_t fWidth; // frame width
151  UInt_t fHeight; // frame height
152  UInt_t fMinWidth; // minimal frame width
153  UInt_t fMinHeight; // minimal frame height
154  UInt_t fMaxWidth; // maximal frame width
155  UInt_t fMaxHeight; // maximal frame height
156  Int_t fBorderWidth; // frame border width
157  UInt_t fOptions; // frame options
158  Pixel_t fBackground; // frame background color
159  UInt_t fEventMask; // currenty active event mask
160  Int_t fDNDState; // EDNDFlags
161  TGFrameElement *fFE; // pointer to frame element
162 
163  static Bool_t fgInit;
168  static const TGGC *fgBlackGC;
169  static const TGGC *fgWhiteGC;
170  static const TGGC *fgHilightGC;
171  static const TGGC *fgShadowGC;
172  static const TGGC *fgBckgndGC;
175  static Int_t fgDbx, fgDby;
176  static Window_t fgDbw;
178 
179  static Time_t GetLastClick();
180 
181  virtual void *GetSender() { return this; } //used to set gTQSender
182  virtual void Draw3dRectangle(UInt_t type, Int_t x, Int_t y,
183  UInt_t w, UInt_t h);
184  virtual void DoRedraw();
185 
187  { return fClient->GetResourcePool(); }
188 
189  TString GetOptionString() const; //used in SavePrimitive()
190 
191  // some protected methods use in gui builder
192  virtual void StartGuiBuilding(Bool_t on = kTRUE);
193 
194 private:
195  TGFrame(const TGFrame&); // not implemented
196  TGFrame& operator=(const TGFrame&); // not implemented
197 
198 public:
199  // Default colors and graphics contexts
202  static Pixel_t GetWhitePixel();
203  static Pixel_t GetBlackPixel();
204  static const TGGC &GetBlackGC();
205  static const TGGC &GetWhiteGC();
206  static const TGGC &GetHilightGC();
207  static const TGGC &GetShadowGC();
208  static const TGGC &GetBckgndGC();
209 
210  TGFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
211  UInt_t options = 0, Pixel_t back = GetDefaultFrameBackground());
212  TGFrame(TGClient *c, Window_t id, const TGWindow *parent = 0);
213  virtual ~TGFrame();
214 
215  virtual void DeleteWindow();
216  virtual void ReallyDelete() { delete this; }
217 
218  UInt_t GetEventMask() const { return fEventMask; }
219  void AddInput(UInt_t emask);
220  void RemoveInput(UInt_t emask);
221 
222  virtual Bool_t HandleEvent(Event_t *event);
223  virtual Bool_t HandleConfigureNotify(Event_t *event);
224  virtual Bool_t HandleButton(Event_t *) { return kFALSE; }
225  virtual Bool_t HandleDoubleClick(Event_t *) { return kFALSE; }
226  virtual Bool_t HandleCrossing(Event_t *) { return kFALSE; }
227  virtual Bool_t HandleMotion(Event_t *) { return kFALSE; }
228  virtual Bool_t HandleKey(Event_t *) { return kFALSE; }
229  virtual Bool_t HandleFocusChange(Event_t *) { return kFALSE; }
230  virtual Bool_t HandleClientMessage(Event_t *event);
231  virtual Bool_t HandleSelection(Event_t *) { return kFALSE; }
233  virtual Bool_t HandleSelectionClear(Event_t *) { return kFALSE; }
234  virtual Bool_t HandleColormapChange(Event_t *) { return kFALSE; }
235  virtual Bool_t HandleDragEnter(TGFrame *) { return kFALSE; }
236  virtual Bool_t HandleDragLeave(TGFrame *) { return kFALSE; }
237  virtual Bool_t HandleDragMotion(TGFrame *) { return kFALSE; }
239  { return kFALSE; }
240  virtual void ProcessedConfigure(Event_t *event)
241  { Emit("ProcessedConfigure(Event_t*)", (Long_t)event); } //*SIGNAL*
242  virtual void ProcessedEvent(Event_t *event)
243  { Emit("ProcessedEvent(Event_t*)", (Long_t)event); } //*SIGNAL*
244 
245  virtual void SendMessage(const TGWindow *w, Long_t msg, Long_t parm1, Long_t parm2);
247 
248  virtual TGDimension GetDefaultSize() const ;
249  virtual void Move(Int_t x, Int_t y);
250  virtual void Resize(UInt_t w = 0, UInt_t h = 0);
251  virtual void Resize(TGDimension size);
252  virtual void MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0);
253  virtual UInt_t GetDefaultWidth() const { return GetDefaultSize().fWidth; }
254  virtual UInt_t GetDefaultHeight() const { return GetDefaultSize().fHeight; }
255  virtual Pixel_t GetBackground() const { return fBackground; }
256  virtual void ChangeBackground(Pixel_t back);
257  virtual void SetBackgroundColor(Pixel_t back);
258  virtual Pixel_t GetForeground() const;
259  virtual void SetForegroundColor(Pixel_t /*fore*/) { }
260  virtual UInt_t GetOptions() const { return fOptions; }
261  virtual void ChangeOptions(UInt_t options);
262  virtual void Layout() { }
263  virtual void MapSubwindows() { } // Simple frames do not have subwindows
264  // Redefine this in TGCompositeFrame!
265  virtual void ReparentWindow(const TGWindow *p, Int_t x = 0, Int_t y = 0)
266  { TGWindow::ReparentWindow(p, x, y); Move(x, y); }
267  virtual void MapWindow() { TGWindow::MapWindow(); if (fFE) fFE->fState |= kIsVisible; }
268  virtual void MapRaised() { TGWindow::MapRaised(); if (fFE) fFE->fState |= kIsVisible; }
269  virtual void UnmapWindow() { TGWindow::UnmapWindow(); if (fFE) fFE->fState &= ~kIsVisible; }
270 
271  virtual void DrawBorder();
272  virtual void DrawCopy(Handle_t /*id*/, Int_t /*x*/, Int_t /*y*/) { }
273  virtual void Activate(Bool_t) { }
274  virtual Bool_t IsActive() const { return kFALSE; }
275  virtual Bool_t IsComposite() const { return kFALSE; }
276  virtual Bool_t IsEditable() const { return kFALSE; }
277  virtual void SetEditable(Bool_t) {}
278  virtual void SetLayoutBroken(Bool_t = kTRUE) {}
279  virtual Bool_t IsLayoutBroken() const { return kFALSE; }
280  virtual void SetCleanup(Int_t = kLocalCleanup) { /* backward compatebility */ }
281 
282  virtual void SetDragType(Int_t type);
283  virtual void SetDropType(Int_t type);
284  virtual Int_t GetDragType() const;
285  virtual Int_t GetDropType() const;
286 
287  UInt_t GetWidth() const { return fWidth; }
288  UInt_t GetHeight() const { return fHeight; }
289  UInt_t GetMinWidth() const { return fMinWidth; }
290  UInt_t GetMinHeight() const { return fMinHeight; }
291  UInt_t GetMaxWidth() const { return fMaxWidth; }
292  UInt_t GetMaxHeight() const { return fMaxHeight; }
293  TGDimension GetSize() const { return TGDimension(fWidth, fHeight); }
294  Int_t GetX() const { return fX; }
295  Int_t GetY() const { return fY; }
296  Int_t GetBorderWidth() const { return fBorderWidth; }
297 
298  TGFrameElement *GetFrameElement() const { return fFE; }
299  void SetFrameElement(TGFrameElement *fe) { fFE = fe; }
300 
302  { return ((x >= 0) && (x < (Int_t)fWidth) && (y >= 0) && (y < (Int_t)fHeight)); }
304  { return (Contains(x, y) ? this : 0); }
305 
306  // Modifiers (without graphic update)
307  virtual void SetX(Int_t x) { fX = x; }
308  virtual void SetY(Int_t y) { fY = y; }
309  virtual void SetWidth(UInt_t w) { fWidth = w; }
310  virtual void SetHeight(UInt_t h) { fHeight = h; }
311  virtual void SetMinWidth(UInt_t w) { fMinWidth = w; }
312  virtual void SetMinHeight(UInt_t h) { fMinHeight = h; }
313  virtual void SetMaxWidth(UInt_t w) { fMaxWidth = w; }
314  virtual void SetMaxHeight(UInt_t h) { fMaxHeight = h; }
315  virtual void SetSize(const TGDimension &s) { fWidth = s.fWidth; fHeight = s.fHeight; }
316 
317  // Printing and saving
318  virtual void Print(Option_t *option="") const;
319  void SaveUserColor(std::ostream &out, Option_t *);
320  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
321 
322  // dummy to remove from context menu
323  virtual void Delete(Option_t * /*option*/ ="") { }
324  virtual TObject *DrawClone(Option_t * /*option */="") const { return 0; }
325  virtual void DrawClass() const { }
326  virtual void Dump() const { }
327  virtual void Inspect() const { }
328  virtual void SetDrawOption(Option_t * /*option*/="") { }
329 
330  // drag and drop...
331  void SetDNDSource(Bool_t onoff)
332  { if (onoff) fDNDState |= kIsDNDSource; else fDNDState &= ~kIsDNDSource; }
333  void SetDNDTarget(Bool_t onoff)
334  { if (onoff) fDNDState |= kIsDNDTarget; else fDNDState &= ~kIsDNDTarget; }
335  Bool_t IsDNDSource() const { return fDNDState & kIsDNDSource; }
336  Bool_t IsDNDTarget() const { return fDNDState & kIsDNDTarget; }
337 
338  virtual TDNDData *GetDNDData(Atom_t /*dataType*/) { return 0; }
339  virtual Bool_t HandleDNDDrop(TDNDData * /*DNDData*/) { return kFALSE; }
340  virtual Atom_t HandleDNDPosition(Int_t /*x*/, Int_t /*y*/, Atom_t /*action*/,
341  Int_t /*xroot*/, Int_t /*yroot*/) { return kNone; }
342  virtual Atom_t HandleDNDEnter(Atom_t * /*typelist*/) { return kNone; }
343  virtual Bool_t HandleDNDLeave() { return kFALSE; }
344  virtual Bool_t HandleDNDFinished() { return kFALSE; }
345 
346  ClassDef(TGFrame,0) // Base class for simple widgets (button, etc.)
347 };
348 
349 //////////////////////////////////////////////////////////////////////////
350 // //
351 // TGCompositeFrame //
352 // //
353 // This class is the base class for composite widgets //
354 // (menu bars, list boxes, etc.). //
355 // //
356 // It provides: //
357 // - a layout manager //
358 // - a frame container (TList *) //
359 // //
360 //////////////////////////////////////////////////////////////////////////
361 
362 class TGCompositeFrame : public TGFrame {
363 
364 
365 protected:
366  TGLayoutManager *fLayoutManager; // layout manager
367  TList *fList; // container of frame elements
368  Bool_t fLayoutBroken; // no layout manager is used
369  Int_t fMustCleanup; // cleanup mode (see EFrameCleanup)
370  Bool_t fMapSubwindows; // kTRUE - map subwindows
371 
372  static TGLayoutHints *fgDefaultHints; // default hints used by AddFrame()
373 
374 private:
375  TGCompositeFrame(const TGCompositeFrame&); // not implemented
376  TGCompositeFrame& operator=(const TGCompositeFrame&); // not implemented
377 
378 public:
379  TGCompositeFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
380  UInt_t options = 0,
382  TGCompositeFrame(TGClient *c, Window_t id, const TGWindow *parent = 0);
383  virtual ~TGCompositeFrame();
384 
385  virtual TList *GetList() const { return fList; }
386 
387  virtual UInt_t GetDefaultWidth() const
388  { return GetDefaultSize().fWidth; }
389  virtual UInt_t GetDefaultHeight() const
390  { return GetDefaultSize().fHeight; }
391  virtual TGDimension GetDefaultSize() const
392  { return (IsLayoutBroken() ? TGDimension(fWidth, fHeight) :
393  fLayoutManager->GetDefaultSize()); }
394  virtual TGFrame *GetFrameFromPoint(Int_t x, Int_t y);
395  virtual Bool_t TranslateCoordinates(TGFrame *child, Int_t x, Int_t y,
396  Int_t &fx, Int_t &fy);
397  virtual void MapSubwindows();
398  virtual void Layout();
399  virtual Bool_t HandleButton(Event_t *) { return kFALSE; }
400  virtual Bool_t HandleDoubleClick(Event_t *) { return kFALSE; }
401  virtual Bool_t HandleCrossing(Event_t *) { return kFALSE; }
402  virtual Bool_t HandleMotion(Event_t *) { return kFALSE; }
403  virtual Bool_t HandleKey(Event_t *) { return kFALSE; }
404  virtual Bool_t HandleFocusChange(Event_t *) { return kFALSE; }
405  virtual Bool_t HandleSelection(Event_t *) { return kFALSE; }
406  virtual Bool_t HandleDragEnter(TGFrame *);
407  virtual Bool_t HandleDragLeave(TGFrame *);
408  virtual Bool_t HandleDragMotion(TGFrame *);
409  virtual Bool_t HandleDragDrop(TGFrame *frame, Int_t x, Int_t y, TGLayoutHints *lo);
410  virtual void ChangeOptions(UInt_t options);
412 
413  virtual TGLayoutManager *GetLayoutManager() const { return fLayoutManager; }
414  virtual void SetLayoutManager(TGLayoutManager *l);
415 
416  virtual TGFrameElement* FindFrameElement(TGFrame *f) const;
417 
418  virtual void AddFrame(TGFrame *f, TGLayoutHints *l = 0);
419  virtual void RemoveAll();
420  virtual void RemoveFrame(TGFrame *f);
421  virtual void ShowFrame(TGFrame *f);
422  virtual void HideFrame(TGFrame *f);
423  Int_t GetState(TGFrame *f) const;
424  Bool_t IsVisible(TGFrame *f) const;
425  Bool_t IsVisible(TGFrameElement *ptr) const { return (ptr->fState & kIsVisible); }
426  Bool_t IsArranged(TGFrame *f) const;
427  Bool_t IsArranged(TGFrameElement *ptr) const { return (ptr->fState & kIsArranged); }
428  Bool_t IsComposite() const { return kTRUE; }
429  virtual Bool_t IsEditable() const;
430  virtual void SetEditable(Bool_t on = kTRUE);
431  virtual void SetLayoutBroken(Bool_t on = kTRUE);
432  virtual Bool_t IsLayoutBroken() const
433  { return fLayoutBroken || !fLayoutManager; }
434  virtual void SetEditDisabled(UInt_t on = 1);
435  virtual void SetCleanup(Int_t mode = kLocalCleanup);
436  virtual Int_t MustCleanup() const { return fMustCleanup; }
437  virtual void Cleanup();
438  virtual void SetMapSubwindows(Bool_t on) { fMapSubwindows = on; }
439  virtual Bool_t IsMapSubwindows() const { return fMapSubwindows; }
440 
441  virtual void Print(Option_t *option="") const;
442  virtual void ChangeSubframesBackground(Pixel_t back);
443  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
444  virtual void SavePrimitiveSubframes(std::ostream &out, Option_t *option = "");
445 
446  ClassDef(TGCompositeFrame,0) // Base class for composite widgets (menubars, etc.)
447 };
448 
449 
451 public:
452  TGVerticalFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
453  UInt_t options = kChildFrame,
455  TGCompositeFrame(p, w, h, options | kVerticalFrame, back) { SetWindowName(); }
456  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
457 
458  ClassDef(TGVerticalFrame,0) // Composite frame with vertical child layout
459 };
460 
462 public:
463  TGHorizontalFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
464  UInt_t options = kChildFrame,
466  TGCompositeFrame(p, w, h, options | kHorizontalFrame, back) { SetWindowName(); }
467  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
468 
469  ClassDef(TGHorizontalFrame,0) // Composite frame with horizontal child layout
470 };
471 
472 
473 //////////////////////////////////////////////////////////////////////////
474 // //
475 // TGMainFrame //
476 // //
477 // This class defines top level windows that interact with the system //
478 // Window Manager (WM or MWM for Motif Window Manager). //
479 // //
480 //////////////////////////////////////////////////////////////////////////
481 
483 
484 protected:
485  enum { kDontCallClose = BIT(14) };
486 
487  // mapping between key and window
488  class TGMapKey : public TObject {
489  private:
490  TGMapKey(const TGMapKey&);
491  TGMapKey& operator=(const TGMapKey&);
492  public:
495  TGMapKey(UInt_t keycode, TGWindow *w): fKeyCode(keycode), fWindow(w) { }
496  };
497 
498  Atom_t *fDNDTypeList; // handles DND types
499  TList *fBindList; // list with key bindings
500  TString fWindowName; // window name
501  TString fIconName; // icon name
502  TString fIconPixmap; // icon pixmap name
503  TString fClassName; // WM class name
504  TString fResourceName; // WM resource name
505  UInt_t fMWMValue; // MWM decoration hints
506  UInt_t fMWMFuncs; // MWM functions
507  UInt_t fMWMInput; // MWM input modes
508  Int_t fWMX; // WM x position
509  Int_t fWMY; // WM y position
510  UInt_t fWMWidth; // WM width
511  UInt_t fWMHeight; // WM height
512  UInt_t fWMMinWidth; // WM min width
513  UInt_t fWMMinHeight; // WM min height
514  UInt_t fWMMaxWidth; // WM max width
515  UInt_t fWMMaxHeight; // WM max height
516  UInt_t fWMWidthInc; // WM width increments
517  UInt_t fWMHeightInc; // WM height increments
518  EInitialState fWMInitState; // WM initial state
519 
520  TString GetMWMvalueString() const; //used in SaveSource()
521  TString GetMWMfuncString() const; //used in SaveSource()
522  TString GetMWMinpString() const; //used in SaveSource()
523 
524 private:
525  TGMainFrame(const TGMainFrame&); // not implemented
526  TGMainFrame& operator=(const TGMainFrame&); // not implemented
527 
528 public:
529  TGMainFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
530  UInt_t options = kVerticalFrame);
531  virtual ~TGMainFrame();
532 
533  virtual Bool_t HandleKey(Event_t *event);
534  virtual Bool_t HandleClientMessage(Event_t *event);
535  virtual Bool_t HandleSelection(Event_t *event);
536  virtual Bool_t HandleSelectionRequest(Event_t *event);
537  virtual Bool_t HandleButton(Event_t *event);
538  virtual Bool_t HandleMotion(Event_t *event);
539  virtual Bool_t SaveFrameAsCodeOrImage();
540  virtual void SendCloseMessage();
541  virtual void CloseWindow(); //*SIGNAL*
542 
543  void DontCallClose();
544  void SetWindowName(const char *name = 0);
545  void SetIconName(const char *name);
546  const TGPicture *SetIconPixmap(const char *iconName);
547  void SetIconPixmap(char **xpm_array);
548  void SetClassHints(const char *className, const char *resourceName);
549  void SetMWMHints(UInt_t value, UInt_t funcs, UInt_t input);
550  void SetWMPosition(Int_t x, Int_t y);
551  void SetWMSize(UInt_t w, UInt_t h);
552  void SetWMSizeHints(UInt_t wmin, UInt_t hmin, UInt_t wmax, UInt_t hmax,
553  UInt_t winc, UInt_t hinc);
554  void SetWMState(EInitialState state);
555 
556  virtual Bool_t BindKey(const TGWindow *w, Int_t keycode, Int_t modifier) const;
557  virtual void RemoveBind(const TGWindow *w, Int_t keycode, Int_t modifier) const;
558  TList *GetBindList() const { return fBindList; }
559 
560  const char *GetWindowName() const { return fWindowName; }
561  const char *GetIconName() const { return fIconName; }
562  const char *GetIconPixmap() const { return fIconPixmap; }
563  void GetClassHints(const char *&className, const char *&resourceName) const
564  { className = fClassName.Data(); resourceName = fResourceName.Data(); }
565  void GetMWMHints(UInt_t &value, UInt_t &funcs, UInt_t &input) const
566  { value = fMWMValue; funcs = fMWMFuncs; input = fMWMInput; }
567  void GetWMPosition(Int_t &x, Int_t &y) const { x = fWMX; y = fWMY; }
568  void GetWMSize(UInt_t &w, UInt_t &h) const { w = fWMWidth; h = fWMHeight; }
569  void GetWMSizeHints(UInt_t &wmin, UInt_t &hmin, UInt_t &wmax, UInt_t &hmax,
570  UInt_t &winc, UInt_t &hinc) const
571  { wmin = fWMMinWidth; hmin = fWMMinHeight; wmax = fWMMaxWidth;
572  hmax = fWMMaxHeight; winc = fWMWidthInc; hinc = fWMHeightInc; }
574 
575  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
576  virtual void SaveSource(const char *filename = "Rootappl.C", Option_t *option = ""); // *MENU*icon=bld_save.png*
577 
578  ClassDef(TGMainFrame,0) // Top level window frame
579 };
580 
581 
582 //////////////////////////////////////////////////////////////////////////
583 // //
584 // TGTransientFrame //
585 // //
586 // This class defines transient windows that typically are used for //
587 // dialogs. //
588 // //
589 //////////////////////////////////////////////////////////////////////////
590 
592 
593 protected:
594  const TGWindow *fMain; // window over which to popup dialog
595 
596 private:
597  TGTransientFrame(const TGTransientFrame&); // not implemented
598  TGTransientFrame& operator=(const TGTransientFrame&); // not implemented
599 
600 public:
601  TGTransientFrame(const TGWindow *p = 0, const TGWindow *main = 0, UInt_t w = 1, UInt_t h = 1,
602  UInt_t options = kVerticalFrame);
603 
606  virtual void CenterOnParent(Bool_t croot = kTRUE, EPlacement pos = kCenter);
607  const TGWindow *GetMain() const { return fMain; }
608  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
609  virtual void SaveSource(const char *filename = "Rootdlog.C", Option_t *option = ""); // *MENU*icon=bld_save.png*
610 
611  ClassDef(TGTransientFrame,0) // Frame for dialog (transient) windows
612 };
613 
614 
615 //////////////////////////////////////////////////////////////////////////
616 // //
617 // TGGroupFrame //
618 // //
619 // A group frame is a composite frame with a border and a title. //
620 // It is typically used to group a number of logically related widgets //
621 // visually together. //
622 // //
623 //////////////////////////////////////////////////////////////////////////
624 
626 
627 protected:
628  TGString *fText; // title text
629  FontStruct_t fFontStruct; // title fontstruct
630  GContext_t fNormGC; // title graphics context
631  Int_t fTitlePos; // *OPTION={GetMethod="GetTitlePos";SetMethod="SetTitlePos";Items=(-1="Left",0="Center",1="Right")}*
632  Bool_t fHasOwnFont; // kTRUE - font defined locally, kFALSE - globally
633 
634  virtual void DoRedraw();
635 
636  static const TGFont *fgDefaultFont;
637  static const TGGC *fgDefaultGC;
638 
639 private:
640  TGGroupFrame(const TGGroupFrame&); // not implemented
641  TGGroupFrame& operator=(const TGGroupFrame&); // not implemented
642 
643 public:
644  enum ETitlePos { kLeft = -1, kCenter = 0, kRight = 1 };
645 
647  static const TGGC &GetDefaultGC();
648 
649  TGGroupFrame(const TGWindow *p, TGString *title,
650  UInt_t options = kVerticalFrame,
654  TGGroupFrame(const TGWindow *p = 0, const char *title = 0,
655  UInt_t options = kVerticalFrame,
659  virtual ~TGGroupFrame();
660 
661  virtual TGDimension GetDefaultSize() const;
662  virtual void DrawBorder();
663  virtual void SetTitle(TGString *title);
664  virtual void SetTitle(const char *title);
665  virtual void Rename(const char *title) { SetTitle(title); } //*MENU*icon=bld_rename.png*
666  Int_t GetTitlePos() const { return fTitlePos; }
667  virtual void SetTitlePos(ETitlePos pos = kLeft) { fTitlePos = pos; } //*SUBMENU*
668  virtual void SetTextColor(Pixel_t color, Bool_t local = kTRUE);
669  virtual void SetTextFont(const char *fontName, Bool_t local = kTRUE);
670  virtual void SetTextFont(FontStruct_t font, Bool_t local = kTRUE);
671  GContext_t GetNormGC() const { return fNormGC; }
673 
674  virtual const char *GetTitle() const { return fText->GetString(); }
675  Bool_t HasOwnFont() const;
676 
677  virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
678 
679  ClassDef(TGGroupFrame,0) // A composite frame with border and title
680 };
681 
682 //////////////////////////////////////////////////////////////////////////
683 // //
684 // TGHeaderFrame //
685 // //
686 // Horizontal Frame used to contain header buttons and splitters //
687 // in a list view. Used to have resizable column headers. //
688 // //
689 //////////////////////////////////////////////////////////////////////////
690 
692 private:
693  TGHeaderFrame(const TGHeaderFrame&); // Not implemented
694  TGHeaderFrame& operator=(const TGHeaderFrame&); // Not implemented
695 
696 protected:
697  Int_t fNColumns; // number of columns
698  TGTextButton **fColHeader; // column headers for in detailed mode
699  TGVFileSplitter **fSplitHeader; // column splitters
700  Cursor_t fSplitCursor; // split cursor;
701  Bool_t fOverSplitter; // Indicates if the cursor is over a splitter
702  Int_t fOverButton; // Indicates over which button the mouse is
703  Int_t fLastButton; // Indicates the last button clicked if any
704 
705 public:
706  TGHeaderFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
707  UInt_t options = kChildFrame,
709 
710  virtual Bool_t HandleButton(Event_t* event);
711  virtual Bool_t HandleMotion(Event_t* event);
712  virtual Bool_t HandleDoubleClick(Event_t *event);
713 
714  void SetColumnsInfo(Int_t nColumns, TGTextButton **colHeader, TGVFileSplitter **splitHeader);
715 
716  ClassDef(TGHeaderFrame,0) // Header frame with buttons and splitters
717 };
718 
719 
720 #endif
TString fResourceName
Definition: TGFrame.h:504
Int_t fOverButton
Definition: TGFrame.h:702
static Window_t fgDbw
Definition: TGFrame.h:176
UInt_t GetMinHeight() const
Definition: TGFrame.h:290
UInt_t fWMMaxWidth
Definition: TGFrame.h:514
virtual void HideFrame(TGFrame *f)
Hide sub frame.
Definition: TGFrame.cxx:1172
virtual Bool_t HandleDragMotion(TGFrame *)
Handle drag motion event.
Definition: TGFrame.cxx:1395
Bool_t HasOwnFont() const
Returns kTRUE if text attributes are unique, returns kFALSE if text attributes are shared (global)...
Definition: TGFrame.cxx:2169
Handle_t FontStruct_t
Definition: GuiTypes.h:40
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
Definition: TGFrame.cxx:587
virtual void SetDrawOption(Option_t *="")
Set drawing option for object.
Definition: TGFrame.h:328
const char * GetIconName() const
Returns mime type name of object.
Definition: TGFrame.h:561
GContext_t GetNormGC() const
Definition: TGFrame.h:671
TString fWindowName
Definition: TGFrame.h:500
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a group frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3212
virtual void MapSubwindows()
Definition: TGFrame.h:263
TGLayoutManager * fLayoutManager
Definition: TGFrame.h:366
EDNDFlags
Definition: TGFrame.h:121
virtual Bool_t ProcessMessage(Long_t, Long_t, Long_t)
Definition: TGFrame.h:246
virtual Bool_t HandleFocusChange(Event_t *)
Definition: TGFrame.h:404
virtual Bool_t IsActive() const
Definition: TGFrame.h:274
EInitialState
Definition: GuiTypes.h:346
virtual void MoveResize(Int_t x, Int_t y, UInt_t w=0, UInt_t h=0)
Move and/or resize the frame.
Definition: TGFrame.cxx:611
virtual void Print(Option_t *option="") const
Print all frames in this composite frame.
Definition: TGFrame.cxx:1248
static const TGGC & GetDefaultGC()
Return default graphics context in use.
Definition: TGFrame.cxx:2301
Int_t fBorderWidth
Definition: TGFrame.h:156
virtual Bool_t HandleButton(Event_t *)
Definition: TGFrame.h:399
TGWindow * fWindow
Definition: TGFrame.h:494
static const TGGC * fgBlackGC
Definition: TGFrame.h:168
TGFrame(const TGFrame &)
virtual Bool_t HandleKey(Event_t *)
Definition: TGFrame.h:403
TGHorizontalFrame(const TGWindow *p=0, UInt_t w=1, UInt_t h=1, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Definition: TGFrame.h:463
EInitialState fWMInitState
Definition: TGFrame.h:518
virtual Bool_t HandleDNDDrop(TDNDData *)
Definition: TGFrame.h:339
virtual Bool_t HandleDoubleClick(Event_t *)
Definition: TGFrame.h:400
virtual void StartGuiBuilding(Bool_t on=kTRUE)
Go into GUI building mode.
Definition: TGFrame.cxx:823
void AddInput(UInt_t emask)
Add events specified in the emask to the events the frame should handle.
Definition: TGFrame.cxx:321
virtual Bool_t HandleKey(Event_t *)
Definition: TGFrame.h:228
EMWMHints
Definition: TGFrame.h:94
virtual void CenterOnParent(Bool_t croot=kTRUE, EPlacement pos=kCenter)
Position transient frame centered relative to the parent frame.
Definition: TGFrame.cxx:1913
const char Option_t
Definition: RtypesCore.h:62
virtual void RemoveBind(const TGWindow *w, Int_t keycode, Int_t modifier) const
Remove key binding.
Definition: TGFrame.cxx:1618
virtual Bool_t IsComposite() const
Definition: TGFrame.h:275
virtual Bool_t HandleKey(Event_t *event)
Handle keyboard events.
Definition: TGFrame.cxx:1564
void SetWindowName(const char *name=0)
Set window name. This is typically done via the window manager.
Definition: TGFrame.cxx:1746
FontStruct_t GetFontStruct() const
Definition: TGFrame.h:672
static UInt_t fgUserColor
Definition: TGFrame.h:177
virtual Bool_t HandleClientMessage(Event_t *event)
Handle client messages sent to this frame.
Definition: TGFrame.cxx:1685
virtual void Inspect() const
Dump contents of this object in a graphics canvas.
Definition: TGFrame.h:327
static const TGGC & GetHilightGC()
Get highlight color graphics context.
Definition: TGFrame.cxx:737
ULong_t Time_t
Definition: GuiTypes.h:43
EFrameCleanup
Definition: TGFrame.h:64
#define BIT(n)
Definition: Rtypes.h:120
TH1 * h
Definition: legend2.C:5
static Pixel_t GetWhitePixel()
Get white pixel value.
Definition: TGFrame.cxx:691
TList * GetBindList() const
Definition: TGFrame.h:558
UInt_t GetWidth() const
Definition: TGFrame.h:287
virtual void SetDropType(Int_t type)
SetDropType.
Definition: TGFrame.cxx:798
virtual void SetForegroundColor(Pixel_t)
Definition: TGFrame.h:259
Int_t fY
Definition: TGFrame.h:149
Handle_t Cursor_t
Definition: GuiTypes.h:35
virtual Bool_t HandleDragEnter(TGFrame *)
Handle drag enter event.
Definition: TGFrame.cxx:1347
Int_t fLastButton
Definition: TGFrame.h:703
This is the ROOT implementation of the Qt object communication mechanism (see also http://www...
Definition: TQObject.h:53
static const char * filename()
virtual void MapWindow()
Definition: TGWindow.h:90
const TGPicture * SetIconPixmap(const char *iconName)
Set window icon pixmap by name.
Definition: TGFrame.cxx:1774
virtual Bool_t TranslateCoordinates(TGFrame *child, Int_t x, Int_t y, Int_t &fx, Int_t &fy)
Translate coordinates to child frame.
Definition: TGFrame.cxx:1314
UInt_t fWMMinHeight
Definition: TGFrame.h:513
Handle_t GContext_t
Definition: GuiTypes.h:39
virtual void DrawBorder()
Draw frame border.
Definition: TGFrame.cxx:403
TGMainFrame(const TGMainFrame &)
UInt_t fMinHeight
Definition: TGFrame.h:153
Basic string class.
Definition: TString.h:137
virtual TList * GetList() const
Definition: TGFrame.h:385
Pixel_t fBackground
Definition: TGFrame.h:158
Bool_t IsArranged(TGFrame *f) const
Get state of sub frame.
Definition: TGFrame.cxx:1226
virtual Bool_t HandleSelection(Event_t *event)
Handle primary selection event.
Definition: TGFrame.cxx:1661
virtual void SetLayoutManager(TGLayoutManager *l)
Set the layout manager for the composite frame.
Definition: TGFrame.cxx:982
static Pixel_t fgWhitePixel
Definition: TGFrame.h:166
virtual void SetTextColor(Pixel_t color, Bool_t local=kTRUE)
Changes text color.
Definition: TGFrame.cxx:2111
virtual void ShowFrame(TGFrame *f)
Show sub frame.
Definition: TGFrame.cxx:1186
virtual void RemoveAll()
Remove all frames from composite frame.
Definition: TGFrame.cxx:1113
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
UInt_t fWMWidthInc
Definition: TGFrame.h:516
virtual void SetMapSubwindows(Bool_t on)
Definition: TGFrame.h:438
const Bool_t kFALSE
Definition: Rtypes.h:92
static Pixel_t fgDefaultSelectedBackground
Definition: TGFrame.h:165
Int_t GetY() const
Definition: TGFrame.h:295
Bool_t IsArranged(TGFrameElement *ptr) const
Definition: TGFrame.h:427
TString GetMWMinpString() const
Returns MWM input mode hints as a string - used in SavePrimitive().
Definition: TGFrame.cxx:2603
UInt_t fWMHeight
Definition: TGFrame.h:511
virtual Bool_t HandleColormapChange(Event_t *)
Definition: TGFrame.h:234
UInt_t GetHeight() const
Definition: TGFrame.h:288
const char * GetIconPixmap() const
Definition: TGFrame.h:562
static const TGGC * fgShadowGC
Definition: TGFrame.h:171
virtual TObject * DrawClone(Option_t *="") const
Draw a clone of this object in the current pad.
Definition: TGFrame.h:324
Int_t fWMX
Definition: TGFrame.h:508
virtual void MapRaised()
Definition: TGFrame.h:268
void SetIconName(const char *name)
Set window icon name. This is typically done via the window manager.
Definition: TGFrame.cxx:1759
void DontCallClose()
Typically call this method in the slot connected to the CloseWindow() signal to prevent the calling o...
Definition: TGFrame.cxx:1738
Int_t fState
Definition: TGLayout.h:126
virtual void Layout()
Layout the elements of the composite frame.
Definition: TGFrame.cxx:1239
virtual Bool_t HandleDNDFinished()
Definition: TGFrame.h:344
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a transient frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3566
virtual Bool_t HandleEvent(Event_t *event)
Handle all frame events.
Definition: TGFrame.cxx:439
virtual void RemoveFrame(TGFrame *f)
Remove frame from composite frame.
Definition: TGFrame.cxx:1131
TGTextButton ** fColHeader
Definition: TGFrame.h:698
UInt_t fWMWidth
Definition: TGFrame.h:510
UInt_t fWMMaxHeight
Definition: TGFrame.h:515
void SetDNDTarget(Bool_t onoff)
Definition: TGFrame.h:333
Int_t fDNDState
Definition: TGFrame.h:160
virtual Bool_t HandleButton(Event_t *event)
Handle mouse button event in header frame.
Definition: TGFrame.cxx:2344
const char * Data() const
Definition: TString.h:349
virtual void DoRedraw()
Redraw the frame.
Definition: TGFrame.cxx:412
virtual void ChangeBackground(Pixel_t back)
Change frame background color.
Definition: TGFrame.cxx:275
virtual Bool_t HandleCrossing(Event_t *)
Definition: TGFrame.h:226
GContext_t fNormGC
Definition: TGFrame.h:630
virtual void SetTitlePos(ETitlePos pos=kLeft)
Definition: TGFrame.h:667
static Bool_t fgInit
Definition: TGFrame.h:163
virtual ~TGCompositeFrame()
Delete a composite frame.
Definition: TGFrame.cxx:886
Double_t x[n]
Definition: legend1.C:17
#define ClassDef(name, id)
Definition: Rtypes.h:254
Bool_t IsDNDSource() const
Definition: TGFrame.h:335
virtual TGDimension GetDefaultSize() const
std::cout << fWidth << "x" << fHeight << std::endl;
Definition: TGFrame.cxx:566
ULong_t Pixel_t
Definition: GuiTypes.h:41
virtual Bool_t HandleMotion(Event_t *event)
Handle mouse motion events in header frame.
Definition: TGFrame.cxx:2403
static UInt_t fgLastButton
Definition: TGFrame.h:174
static const TGGC * fgBckgndGC
Definition: TGFrame.h:172
virtual Bool_t HandleDragLeave(TGFrame *)
Handle drag leave event.
Definition: TGFrame.cxx:1377
static Pixel_t GetDefaultFrameBackground()
Get default frame background.
Definition: TGFrame.cxx:665
virtual Bool_t IsMapSubwindows() const
Definition: TGFrame.h:439
virtual UInt_t GetOptions() const
Definition: TGFrame.h:260
virtual Atom_t HandleDNDPosition(Int_t, Int_t, Atom_t, Int_t, Int_t)
Definition: TGFrame.h:340
virtual void ReparentWindow(const TGWindow *p, Int_t x=0, Int_t y=0)
Reparent window, make p the new parent and position the window at position (x,y) in new parent...
Definition: TGWindow.cxx:142
Int_t fX
Definition: TGFrame.h:148
TGTransientFrame(const TGTransientFrame &)
Int_t fNColumns
Definition: TGFrame.h:697
void SetWMSizeHints(UInt_t wmin, UInt_t hmin, UInt_t wmax, UInt_t hmax, UInt_t winc, UInt_t hinc)
Give the window manager minimum and maximum size hints.
Definition: TGFrame.cxx:1862
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a horizontal frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3102
virtual ~TGGroupFrame()
Delete a group frame.
Definition: TGFrame.cxx:2072
Handle_t Atom_t
Definition: GuiTypes.h:38
TGTransientFrame & operator=(const TGTransientFrame &)
virtual ~TGMainFrame()
TGMainFrame destructor.
Definition: TGFrame.cxx:1487
void GetWMSize(UInt_t &w, UInt_t &h) const
Definition: TGFrame.h:568
virtual TGDimension GetDefaultSize() const =0
virtual void ReparentWindow(const TGWindow *p, Int_t x=0, Int_t y=0)
Reparent window, make p the new parent and position the window at position (x,y) in new parent...
Definition: TGFrame.h:265
TGCompositeFrame(const TGCompositeFrame &)
UInt_t GetEventMask() const
Definition: TGFrame.h:218
static Pixel_t fgBlackPixel
Definition: TGFrame.h:167
TGFrameElement * GetFrameElement() const
Definition: TGFrame.h:298
virtual void Layout()
Definition: TGFrame.h:262
static Time_t fgLastClick
Definition: TGFrame.h:173
virtual void SendMessage(const TGWindow *w, Long_t msg, Long_t parm1, Long_t parm2)
Send message (i.e.
Definition: TGFrame.cxx:627
virtual void SetDragType(Int_t type)
SetDragType.
Definition: TGFrame.cxx:791
const char * GetWindowName() const
Definition: TGFrame.h:560
virtual void Activate(Bool_t)
Definition: TGFrame.h:273
virtual void SetBackgroundColor(Pixel_t back)
Set background color (override from TGWindow base class).
Definition: TGFrame.cxx:294
UInt_t fMaxWidth
Definition: TGFrame.h:154
Bool_t fLayoutBroken
Definition: TGFrame.h:368
void SetClassHints(const char *className, const char *resourceName)
Set the windows class and resource name.
Definition: TGFrame.cxx:1814
static const TGFont * fgDefaultFont
Definition: TGFrame.h:636
Cursor_t fSplitCursor
Definition: TGFrame.h:700
TString GetMWMfuncString() const
Returns MWM function hints as a string - used in SavePrimitive().
Definition: TGFrame.cxx:2566
virtual Bool_t HandleSelectionRequest(Event_t *)
Definition: TGFrame.h:232
void GetWMPosition(Int_t &x, Int_t &y) const
Definition: TGFrame.h:567
const TGWindow * GetMain() const
Definition: TGFrame.h:607
virtual Bool_t IsEditable() const
Definition: TGFrame.h:276
UInt_t fHeight
Definition: TGDimension.h:32
virtual UInt_t GetDefaultWidth() const
Definition: TGFrame.h:253
TGMainFrame & operator=(const TGMainFrame &)
virtual Bool_t HandleMotion(Event_t *event)
Handle mouse motion events.
Definition: TGFrame.cxx:1649
EInitialState GetWMState() const
Definition: TGFrame.h:573
char * out
Definition: TBase64.cxx:29
Bool_t IsDNDTarget() const
Definition: TGFrame.h:336
Bool_t fMapSubwindows
Definition: TGFrame.h:370
void Emit(const char *signal)
Acitvate signal without args.
Definition: TQObject.cxx:559
virtual TDNDData * GetDNDData(Atom_t)
Definition: TGFrame.h:338
TGString * fText
Definition: TGFrame.h:628
TGMapKey & operator=(const TGMapKey &)
virtual void SetMaxHeight(UInt_t h)
Definition: TGFrame.h:314
TGGroupFrame & operator=(const TGGroupFrame &)
A doubly linked list.
Definition: TList.h:47
virtual TGFrame * GetFrameFromPoint(Int_t x, Int_t y)
Definition: TGFrame.h:303
UInt_t fMinWidth
Definition: TGFrame.h:152
void GetWMSizeHints(UInt_t &wmin, UInt_t &hmin, UInt_t &wmax, UInt_t &hmax, UInt_t &winc, UInt_t &hinc) const
Definition: TGFrame.h:569
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a main frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3050
virtual void ReallyDelete()
Definition: TGFrame.h:216
virtual TGDimension GetDefaultSize() const
Returns default size.
Definition: TGFrame.cxx:2085
virtual Int_t MustCleanup() const
Definition: TGFrame.h:436
static Int_t fgDby
Definition: TGFrame.h:175
void SetDNDSource(Bool_t onoff)
Definition: TGFrame.h:331
virtual Atom_t HandleDNDEnter(Atom_t *)
Definition: TGFrame.h:342
virtual TGFrame * GetFrameFromPoint(Int_t x, Int_t y)
Get frame located at specified point.
Definition: TGFrame.cxx:1290
UInt_t fWidth
Definition: TGDimension.h:31
Bool_t fOverSplitter
Definition: TGFrame.h:701
virtual void SendCloseMessage()
Send close message to self.
Definition: TGFrame.cxx:1702
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3188
virtual Bool_t HandleDragLeave(TGFrame *)
Definition: TGFrame.h:236
virtual void SetLayoutBroken(Bool_t on=kTRUE)
Set broken layout. No Layout method is called.
Definition: TGFrame.cxx:994
TList * fList
Definition: TGFrame.h:367
virtual void SetSize(const TGDimension &s)
Definition: TGFrame.h:315
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a vertical frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:3145
UInt_t fWMMinWidth
Definition: TGFrame.h:512
static const TGGC * fgHilightGC
Definition: TGFrame.h:170
virtual void ProcessedEvent(Event_t *event)
Definition: TGFrame.h:242
UInt_t fOptions
Definition: TGFrame.h:157
virtual void SavePrimitiveSubframes(std::ostream &out, Option_t *option="")
Auxilary protected method used to save subframes.
Definition: TGFrame.cxx:2621
UInt_t GetMinWidth() const
Definition: TGFrame.h:289
virtual UInt_t GetDefaultWidth() const
Definition: TGFrame.h:387
virtual Bool_t HandleMotion(Event_t *)
Definition: TGFrame.h:227
void RemoveInput(UInt_t emask)
Remove events specified in emask from the events the frame should handle.
Definition: TGFrame.cxx:330
Bool_t IsVisible(TGFrame *f) const
Get state of sub frame.
Definition: TGFrame.cxx:1213
TString fIconName
Definition: TGFrame.h:501
static const TGGC & GetWhiteGC()
Get white graphics context.
Definition: TGFrame.cxx:727
virtual void SetTextFont(const char *fontName, Bool_t local=kTRUE)
Changes text font specified by name.
Definition: TGFrame.cxx:2156
FontStruct_t fFontStruct
Definition: TGFrame.h:629
virtual UInt_t GetDefaultHeight() const
Definition: TGFrame.h:389
virtual void * GetSender()
Definition: TGFrame.h:181
virtual void SetMinWidth(UInt_t w)
Definition: TGFrame.h:311
static Int_t fgDbx
Definition: TGFrame.h:175
virtual Bool_t HandleFocusChange(Event_t *)
Definition: TGFrame.h:229
static TGLayoutHints * fgDefaultHints
Definition: TGFrame.h:372
virtual void CloseWindow()
Close and delete main frame.
Definition: TGFrame.cxx:1728
virtual Int_t GetDragType() const
Returns drag source type.
Definition: TGFrame.cxx:806
unsigned int UInt_t
Definition: RtypesCore.h:42
TGCompositeFrame & operator=(const TGCompositeFrame &)
const Handle_t kNone
Definition: GuiTypes.h:89
virtual Int_t GetDropType() const
Returns drop target type.
Definition: TGFrame.cxx:815
TGMapKey(const TGMapKey &)
virtual void ChangeOptions(UInt_t options)
Change composite frame options. Options is an OR of the EFrameTypes.
Definition: TGFrame.cxx:1025
TLine * l
Definition: textangle.C:4
virtual void SaveSource(const char *filename="Rootdlog.C", Option_t *option="")
Save the GUI tranzient frame widget in a C++ macro file.
Definition: TGFrame.cxx:3291
virtual Bool_t HandleDoubleClick(Event_t *event)
Handle double click mouse event in header frame.
Definition: TGFrame.cxx:2376
virtual void DrawBorder()
Draw border of around the group frame.
Definition: TGFrame.cxx:2180
static Pixel_t fgDefaultFrameBackground
Definition: TGFrame.h:164
virtual void SetX(Int_t x)
Definition: TGFrame.h:307
Int_t fWMY
Definition: TGFrame.h:509
virtual Bool_t IsLayoutBroken() const
Definition: TGFrame.h:432
TGVerticalFrame(const TGWindow *p=0, UInt_t w=1, UInt_t h=1, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Definition: TGFrame.h:452
Int_t fMustCleanup
Definition: TGFrame.h:369
static const TGGC * fgDefaultGC
Definition: TGFrame.h:637
virtual Bool_t HandleDragMotion(TGFrame *)
Definition: TGFrame.h:237
virtual Bool_t ProcessMessage(Long_t, Long_t, Long_t)
Definition: TGFrame.h:411
static const TGGC & GetBlackGC()
Get black graphics context.
Definition: TGFrame.cxx:717
Bool_t fHasOwnFont
Definition: TGFrame.h:632
virtual Bool_t HandleDragDrop(TGFrame *frame, Int_t x, Int_t y, TGLayoutHints *lo)
Handle drop event.
Definition: TGFrame.cxx:1403
TGHeaderFrame(const TGHeaderFrame &)
virtual TGFrameElement * FindFrameElement(TGFrame *f) const
Find frame-element holding frame f.
Definition: TGFrame.cxx:1076
virtual Bool_t HandleSelectionClear(Event_t *)
Definition: TGFrame.h:233
virtual void Delete(Option_t *="")
Delete this object.
Definition: TGFrame.h:323
UInt_t fMWMInput
Definition: TGFrame.h:507
UInt_t fWidth
Definition: TGFrame.h:150
virtual void Move(Int_t x, Int_t y)
Move frame.
Definition: TGFrame.cxx:575
virtual Bool_t HandleMotion(Event_t *)
Definition: TGFrame.h:402
virtual void MapRaised()
Definition: TGWindow.h:92
virtual Bool_t HandleConfigureNotify(Event_t *event)
This event is generated when the frame is resized.
Definition: TGFrame.cxx:425
long Long_t
Definition: RtypesCore.h:50
int main(int argc, char *argv[])
Definition: python64.c:14
virtual void SetWidth(UInt_t w)
Definition: TGFrame.h:309
const TGWindow * fMain
Definition: TGFrame.h:594
Bool_t Contains(Int_t x, Int_t y) const
Definition: TGFrame.h:301
UInt_t GetMaxHeight() const
Definition: TGFrame.h:292
EFrameState
Definition: TGFrame.h:57
virtual void DrawCopy(Handle_t, Int_t, Int_t)
Definition: TGFrame.h:272
double f(double x)
virtual void SetEditDisabled(UInt_t on=1)
Set edit disable flag for this frame and subframes.
Definition: TGFrame.cxx:1004
const TGResourcePool * GetResourcePool() const
Definition: TGFrame.h:186
virtual void Print(Option_t *option="") const
Print window id.
Definition: TGFrame.cxx:775
const TGResourcePool * GetResourcePool() const
Definition: TGClient.h:141
virtual void SetCleanup(Int_t mode=kLocalCleanup)
Turn on automatic cleanup of child frames in dtor.
Definition: TGFrame.cxx:1054
void GetClassHints(const char *&className, const char *&resourceName) const
Definition: TGFrame.h:563
virtual void ChangeSubframesBackground(Pixel_t back)
Change background color for this frame and all subframes.
Definition: TGFrame.cxx:1270
virtual Bool_t HandleSelection(Event_t *)
Definition: TGFrame.h:231
virtual void DrawClass() const
Draw class inheritance tree of the class to which this object belongs.
Definition: TGFrame.h:325
TGDimension GetSize() const
Definition: TGFrame.h:293
virtual void SetEditable(Bool_t)
Definition: TGFrame.h:277
int type
Definition: TGX11.cxx:120
Definition: TGFont.h:155
static Time_t GetLastClick()
Get time of last mouse click.
Definition: TGFrame.cxx:767
virtual Bool_t HandleClientMessage(Event_t *event)
Handle a client message.
Definition: TGFrame.cxx:651
Double_t y[n]
Definition: legend1.C:17
TGHeaderFrame & operator=(const TGHeaderFrame &)
void GetMWMHints(UInt_t &value, UInt_t &funcs, UInt_t &input) const
Definition: TGFrame.h:565
virtual Bool_t IsEditable() const
Return kTRUE if frame is being edited.
Definition: TGFrame.cxx:909
TString fIconPixmap
Definition: TGFrame.h:502
virtual Bool_t HandleButton(Event_t *)
Definition: TGFrame.h:224
virtual void SetCleanup(Int_t=kLocalCleanup)
Definition: TGFrame.h:280
UInt_t fHeight
Definition: TGFrame.h:151
void SetColumnsInfo(Int_t nColumns, TGTextButton **colHeader, TGVFileSplitter **splitHeader)
Set columns information in the header frame.
Definition: TGFrame.cxx:2333
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
Definition: TGFrame.cxx:1099
Int_t GetX() const
Definition: TGFrame.h:294
TGMapKey(UInt_t keycode, TGWindow *w)
Definition: TGFrame.h:495
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a composite frame widget as a C++ statement(s) on output stream out.
Definition: TGFrame.cxx:2723
virtual void MapSubwindows()
Map all sub windows that are part of the composite frame.
Definition: TGFrame.cxx:1146
UInt_t fEventMask
Definition: TGFrame.h:159
#define name(a, b)
Definition: linkTestLib0.cpp:5
UInt_t fMWMFuncs
Definition: TGFrame.h:506
Mother of all ROOT objects.
Definition: TObject.h:58
virtual ~TGFrame()
Destructor.
Definition: TGFrame.cxx:248
virtual const char * GetTitle() const
Returns title of object.
Definition: TGFrame.h:674
virtual void SetY(Int_t y)
Definition: TGFrame.h:308
virtual Bool_t HandleDoubleClick(Event_t *)
Definition: TGFrame.h:225
virtual Pixel_t GetBackground() const
Definition: TGFrame.h:255
Handle_t Window_t
Definition: GuiTypes.h:30
virtual void UnmapWindow()
Definition: TGFrame.h:269
void SetWMPosition(Int_t x, Int_t y)
Give the window manager a window position hint.
Definition: TGFrame.cxx:1837
static FontStruct_t GetDefaultFontStruct()
Return default font structure in use.
Definition: TGFrame.cxx:2291
void SetFrameElement(TGFrameElement *fe)
Definition: TGFrame.h:299
virtual UInt_t GetDefaultHeight() const
Definition: TGFrame.h:254
virtual Bool_t SaveFrameAsCodeOrImage()
Opens dialog window allowing user to save the frame contents as a ROOT macro or as an image...
Definition: TGFrame.cxx:1503
virtual void SetHeight(UInt_t h)
Definition: TGFrame.h:310
Bool_t IsComposite() const
Definition: TGFrame.h:428
virtual Bool_t HandleDragDrop(TGFrame *, Int_t, Int_t, TGLayoutHints *)
Definition: TGFrame.h:238
Int_t GetBorderWidth() const
Definition: TGFrame.h:296
virtual void ProcessedConfigure(Event_t *event)
Definition: TGFrame.h:240
UInt_t GetMaxWidth() const
Definition: TGFrame.h:291
TGFrame & operator=(const TGFrame &)
virtual void SetLayoutBroken(Bool_t=kTRUE)
Definition: TGFrame.h:278
virtual void MapWindow()
Definition: TGFrame.h:267
TGClient * fClient
Definition: TGObject.h:41
UInt_t fMaxHeight
Definition: TGFrame.h:155
TString GetMWMvalueString() const
Returns MWM decoration hints as a string - used in SavePrimitive().
Definition: TGFrame.cxx:2526
virtual Bool_t HandleButton(Event_t *event)
Handle mouse button events.
Definition: TGFrame.cxx:1637
Int_t fTitlePos
Definition: TGFrame.h:631
virtual void SetTitle(TGString *title)
Set or change title of the group frame.
Definition: TGFrame.cxx:2262
virtual Bool_t HandleSelectionRequest(Event_t *event)
Handle selection request event.
Definition: TGFrame.cxx:1673
void SetWMSize(UInt_t w, UInt_t h)
Give the window manager a window size hint.
Definition: TGFrame.cxx:1849
Atom_t * fDNDTypeList
Definition: TGFrame.h:498
virtual Bool_t IsLayoutBroken() const
Definition: TGFrame.h:279
void SaveUserColor(std::ostream &out, Option_t *)
Save a user color in a C++ macro file - used in SavePrimitive().
Definition: TGFrame.cxx:2433
virtual void UnmapWindow()
Definition: TGWindow.h:93
virtual void SetMinHeight(UInt_t h)
Definition: TGFrame.h:312
const char * GetString() const
Definition: TGString.h:44
TGGroupFrame(const TGGroupFrame &)
virtual Pixel_t GetForeground() const
Return frame foreground color.
Definition: TGFrame.cxx:285
virtual TGDimension GetDefaultSize() const
std::cout << fWidth << "x" << fHeight << std::endl;
Definition: TGFrame.h:391
UInt_t fMWMValue
Definition: TGFrame.h:505
TList * fBindList
Definition: TGFrame.h:499
virtual void SetEditable(Bool_t on=kTRUE)
Switch ON/OFF edit mode.
Definition: TGFrame.cxx:930
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.
Definition: TGFrame.cxx:339
Int_t GetTitlePos() const
Definition: TGFrame.h:666
static const TGGC * fgWhiteGC
Definition: TGFrame.h:169
virtual void Cleanup()
Cleanup and delete all objects contained in this composite frame.
Definition: TGFrame.cxx:949
virtual void DeleteWindow()
Delete window.
Definition: TGFrame.cxx:258
const Bool_t kTRUE
Definition: Rtypes.h:91
TGVFileSplitter ** fSplitHeader
Definition: TGFrame.h:699
void SetMWMHints(UInt_t value, UInt_t funcs, UInt_t input)
Set decoration style for MWM-compatible wm (mwm, ncdwm, fvwm?).
Definition: TGFrame.cxx:1824
TGFrameElement * fFE
Definition: TGFrame.h:161
float value
Definition: math.cpp:443
virtual Bool_t BindKey(const TGWindow *w, Int_t keycode, Int_t modifier) const
Bind key to a window.
Definition: TGFrame.cxx:1595
double norm(double *x, double *p)
Definition: unuranDistr.cxx:40
virtual void SaveSource(const char *filename="Rootappl.C", Option_t *option="")
Save the GUI main frame widget in a C++ macro file.
Definition: TGFrame.cxx:2771
virtual void ChangeOptions(UInt_t options)
Change frame options. Options is an OR of the EFrameTypes.
Definition: TGFrame.cxx:303
virtual void DoRedraw()
Redraw the group frame.
Definition: TGFrame.cxx:2099
Definition: TGGC.h:35
TString GetOptionString() const
Returns a frame option string - used in SavePrimitive().
Definition: TGFrame.cxx:2460
static const TGGC & GetShadowGC()
Get shadow color graphics context.
Definition: TGFrame.cxx:747
virtual void Rename(const char *title)
Definition: TGFrame.h:665
static const TGGC & GetBckgndGC()
Get background color graphics context.
Definition: TGFrame.cxx:757
static Pixel_t GetBlackPixel()
Get black pixel value.
Definition: TGFrame.cxx:704
virtual Bool_t HandleDragEnter(TGFrame *)
Definition: TGFrame.h:235
static Pixel_t GetDefaultSelectedBackground()
Get default selected frame background.
Definition: TGFrame.cxx:678
virtual Bool_t HandleCrossing(Event_t *)
Definition: TGFrame.h:401
Bool_t IsVisible(TGFrameElement *ptr) const
Definition: TGFrame.h:425
virtual Bool_t HandleSelection(Event_t *)
Definition: TGFrame.h:405
Int_t GetState(TGFrame *f) const
Get state of sub frame.
Definition: TGFrame.cxx:1200
EFrameType
Definition: TGFrame.h:72
UInt_t fWMHeightInc
Definition: TGFrame.h:517
virtual TGLayoutManager * GetLayoutManager() const
Definition: TGFrame.h:413
virtual void SetWindowName(const char *name=0)
Set window name.
Definition: TGWindow.cxx:118
virtual void Dump() const
Dump contents of object on stdout.
Definition: TGFrame.h:326
virtual void SetMaxWidth(UInt_t w)
Definition: TGFrame.h:313
virtual Bool_t HandleDNDLeave()
Definition: TGFrame.h:343
void SetWMState(EInitialState state)
Set the initial state of the window. Either kNormalState or kIconicState.
Definition: TGFrame.cxx:1880
TString fClassName
Definition: TGFrame.h:503
ULong_t Handle_t
Definition: GuiTypes.h:27