144 fApply->
Connect(
"Clicked()",
"TGeoTubeEditor",
this,
"DoApply()");
145 fUndo->
Connect(
"Clicked()",
"TGeoTubeEditor",
this,
"DoUndo()");
146 fShapeName->
Connect(
"TextChanged(const char *)",
"TGeoTubeEditor",
this,
"DoModified()");
147 fERmin->
Connect(
"ValueSet(Long_t)",
"TGeoTubeEditor",
this,
"DoRmin()");
148 fERmax->
Connect(
"ValueSet(Long_t)",
"TGeoTubeEditor",
this,
"DoRmax()");
149 fEDz->
Connect(
"ValueSet(Long_t)",
"TGeoTubeEditor",
this,
"DoDz()");
162 if (obj == 0 || (obj->IsA()!=TGeoTube::Class())) {
248 if (rmax<rmin+1.e-10) {
267 if (rmax<rmin+1.e-10) {
370 fApply->
Connect(
"Clicked()",
"TGeoTubeSegEditor",
this,
"DoApply()");
371 fUndo->
Connect(
"Clicked()",
"TGeoTubeSegEditor",
this,
"DoUndo()");
372 fEPhi1->
Connect(
"ValueSet(Long_t)",
"TGeoTubeSegEditor",
this,
"DoPhi1()");
373 fEPhi2->
Connect(
"ValueSet(Long_t)",
"TGeoTubeSegEditor",
this,
"DoPhi2()");
376 fSPhi->
Connect(
"PositionChanged()",
"TGeoTubeSegEditor",
this,
"DoPhi()");
384 if (obj == 0 || (obj->IsA()!=TGeoTubeSeg::Class())) {
416 if (phi1 > 360-1.e-10) {
420 if (phi2<phi1+1.e-10) {
439 if (phi2-phi1 > 360.) {
443 if (phi2<phi1+1.e-10) {
480 if (rmin<0 || rmax<rmin)
return;
484 if ((phi2-phi1) > 360.001) {
553 nef->
SetToolTipText(
"Enter the theta angle of the lower plane normal");
555 fEThlo->
Connect(
"ValueSet(Long_t)",
"TGeoCtubEditor",
this,
"DoThlo()");
556 nef->
Connect(
"TextChanged(const char *)",
"TGeoCtubEditor",
this,
"DoModified()");
566 nef->
SetToolTipText(
"Enter the phi angle of the lower plane normal");
568 fEPhlo->
Connect(
"ValueSet(Long_t)",
"TGeoCtubEditor",
this,
"DoPhlo()");
569 nef->
Connect(
"TextChanged(const char *)",
"TGeoCtubEditor",
this,
"DoModified()");
583 nef->
SetToolTipText(
"Enter the theta angle of the upper plane normal");
585 fEThhi->
Connect(
"ValueSet(Long_t)",
"TGeoCtubEditor",
this,
"DoThhi()");
586 nef->
Connect(
"TextChanged(const char *)",
"TGeoCtubEditor",
this,
"DoModified()");
596 nef->
SetToolTipText(
"Enter the phi angle of the upper plane normal");
598 fEPhhi->
Connect(
"ValueSet(Long_t)",
"TGeoCtubEditor",
this,
"DoPhhi()");
599 nef->
Connect(
"TextChanged(const char *)",
"TGeoCtubEditor",
this,
"DoModified()");
627 if (obj == 0 || (obj->IsA()!=TGeoCtub::Class())) {
724 if (rmin<0 || rmax<rmin)
return;
728 if ((phi2-phi1) > 360.001) {
747 ((
TGeoCtub*)
fShape)->SetCtubDimensions(rmin, rmax, dz, phi1, phi2, lx,ly,lz,tx,ty,tz);
ULong_t Pixel_t
Pixel value.
include TDocParser_001 C image html pict1_TDocParser_001 png width
R__EXTERN TGeoManager * gGeoManager
The base class for composite widgets (menu bars, list boxes, etc.).
virtual TList * GetList() const
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
virtual void Cleanup()
Cleanup and delete all objects contained in this composite frame.
virtual Float_t GetMaxPosition() const
virtual Float_t GetMinPosition() const
virtual void SetRange(Float_t min, Float_t max)
virtual void SetPosition(Float_t min, Float_t max)
Dragging the slider will generate the event:
virtual void SetSize(const TGDimension &s)
virtual UInt_t GetDefaultWidth() const
virtual UInt_t GetDefaultHeight() const
TGDimension GetSize() const
virtual Bool_t IsComposite() const
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
This class handles GUI labels.
This class describes layout hints used by the layout classes.
TGNumberEntry is a number entry input widget with up/down buttons.
UInt_t GetDefaultHeight() const
TGNumberEntryField * GetNumberEntry() const
virtual void Associate(const TGWindow *w)
Make w the window that will receive the generated messages.
void SetNumAttr(EAttribute attr=kNEAAnyNumber)
virtual Double_t GetNumber() const
virtual void SetNumber(Double_t val, Bool_t emit=kTRUE)
A text buffer is used in several widgets, like TGTextEntry, TGFileDialog, etc.
Yield an action as soon as it is clicked.
A TGTextEntry is a one line text input widget.
const char * GetText() const
virtual void SetToolTipText(const char *text, Long_t delayms=500)
Set tool tip text associated with this text entry.
virtual void SetText(const char *text, Bool_t emit=kTRUE)
Sets text entry to text, clears the selection and moves the cursor to the end of the line.
ROOT GUI Window base class.
Bool_t fInit
init flag for setting signals/slots
virtual void MakeTitle(const char *title)
Create attribute frame title.
virtual void SetModel(TObject *obj)
Connect to the selected object.
virtual void DoUndo()
Slot for undoing last operation.
void DoPhlo()
Slot for phi1.
virtual void DoApply()
Slot for applying modifications.
virtual ~TGeoCtubEditor()
Destructor.
void DoThhi()
Slot for phi1.
void DoPhhi()
Slot for phi1.
TGeoCtubEditor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor for cut tube editor.
void DoThlo()
Slot for phi1.
The cut tubes constructor has the form:
Common base class for geombuilder editors.
virtual void Update()
Override Update from TGedFrame as fGedEditor can be null.
virtual void SetActive(Bool_t active=kTRUE)
Set active GUI attribute frames related to the selected object.
TVirtualGeoPainter * GetPainter() const
virtual const char * GetName() const
Get the shape name.
virtual void Draw(Option_t *option="")
Draw this shape.
static void MoveFrame(TGCompositeFrame *fr, TGCompositeFrame *p)
Move frame fr at the end of the list of parent p.
static void Cleanup(TGCompositeFrame *frame)
Static method to cleanup hierarchically all daughters of a composite frame.
virtual ~TGeoTubeEditor()
Destructor.
virtual void ConnectSignals2Slots()
Connect signals to slots.
void DoRmax()
Slot for rmax.
void DoRmin()
Slot for rmin.
TGCompositeFrame * fDFrame
void DoModified()
Slot for signaling modifications.
TGCompositeFrame * fBFrame
virtual void DoUndo()
Slot for undoing last operation.
void DoName()
Perform name change.
virtual void SetModel(TObject *obj)
Connect to the selected object.
Bool_t IsDelayed() const
Check if shape drawing is delayed.
TGeoTubeEditor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor for tube editor.
virtual void DoApply()
Slot for applying modifications.
Editor for a TGeoTubeSeg.
virtual void DoUndo()
Slot for undoing last operation.
virtual ~TGeoTubeSegEditor()
Destructor.
virtual void DoApply()
Slot for applying modifications.
void DoPhi2()
Slot for phi2.
virtual void SetModel(TObject *obj)
Connect to the selected object.
virtual void ConnectSignals2Slots()
Connect signals to slots.
void DoPhi1()
Slot for phi1.
void DoPhi()
Slot for phi slider.
TGeoTubeSegEditor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor for tube segment editor.
A tube segment is a tube having a range in phi.
virtual Double_t GetRmin() const
void SetTubeDimensions(Double_t rmin, Double_t rmax, Double_t dz)
Set tube dimensions.
virtual Double_t GetDz() const
virtual void ComputeBBox()
compute bounding box of the tube
virtual Double_t GetRmax() const
virtual void SetName(const char *name)
Set the name of the TNamed.
Mother of all ROOT objects.
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.
Bool_t Disconnect(const char *signal=0, void *receiver=0, const char *slot=0)
Disconnects signal of this object from slot of receiver.
virtual void ShowAxis()=0
virtual Bool_t IsPaintingShape() const =0
virtual TView * GetView() const =0
Double_t ATan2(Double_t y, Double_t x)
constexpr Double_t DegToRad()
Conversion from degree to radian:
constexpr Double_t RadToDeg()
Conversion from radian to degree: