21 class TGFrameElementPack :
public TGFrameElement
24 TGFrameElementPack(
const TGFrameElementPack&);
25 TGFrameElementPack& operator=(
const TGFrameElementPack&);
29 TGFrameElementPack* fSplitFE;
31 TGFrameElementPack(TGFrame *frame, TGLayoutHints* lh = 0, Float_t weight = 1):
32 TGFrameElement(frame, lh), fWeight(weight), fSplitFE(0) { }
34 ClassDef(TGFrameElementPack, 0);
39 class TGPack :
public TGCompositeFrame
42 TGPack(
const TGPack&);
43 TGPack& operator=(
const TGPack&);
55 Int_t GetFrameLength(
const TGFrame* f)
const {
return fVertical ? f->GetHeight() : f->GetWidth(); }
56 Int_t GetLength()
const {
return GetFrameLength(
this); }
57 Int_t GetAvailableLength()
const;
59 void SetFrameLength (TGFrame* f, Int_t len);
60 void SetFramePosition(TGFrame* f, Int_t pos);
62 void FindFrames(TGFrame* splitter, TGFrameElementPack*& f0, TGFrameElementPack*& f1)
const;
64 void CheckSplitterVisibility();
65 void ResizeExistingFrames();
66 void RefitFramesToPack();
68 void AddFrameInternal(TGFrame *f, TGLayoutHints* l = 0, Float_t weight = 1);
69 void RemoveFrameInternal(TGFrame *f);
73 TGPack(
const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1, UInt_t options = 0,
74 Pixel_t back = GetDefaultFrameBackground());
75 TGPack(TGClient *c, Window_t
id,
const TGWindow *parent = 0);
78 virtual void AddFrameWithWeight(TGFrame *f, TGLayoutHints* l, Float_t w);
79 virtual void AddFrame(TGFrame *f, TGLayoutHints* l=0);
81 virtual void DeleteFrame(TGFrame *f);
82 virtual void RemoveFrame(TGFrame *f);
83 virtual void ShowFrame(TGFrame *f);
84 virtual void HideFrame(TGFrame *f);
86 using TGCompositeFrame::Resize;
87 virtual void Resize(UInt_t w = 0, UInt_t h = 0);
89 using TGCompositeFrame::MapSubwindows;
90 virtual void MapSubwindows();
92 virtual void MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0);
93 virtual void Layout();
95 virtual void Dump()
const;
97 void EqualizeFrames();
98 void HandleSplitterStart();
99 void HandleSplitterResize(Int_t delta);
103 Bool_t GetVertical()
const {
return fVertical; }
104 void SetVertical(Bool_t x);
107 Bool_t GetUseSplitters()
const {
return fUseSplitters; }
108 void SetUseSplitters(Bool_t x) { fUseSplitters = x; }