00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifdef G4VIS_BUILD_OPENGLXM_DRIVER
00032
00033 #include "G4OpenGLXmVWidgetComponent.hh"
00034 #include "G4OpenGLXmVWidgetContainer.hh"
00035 #include "G4OpenGLXmRadioButton.hh"
00036 #include <X11/Intrinsic.h>
00037 #include <Xm/ToggleB.h>
00038
00039 #include "globals.hh"
00040
00041 G4OpenGLXmRadioButton::G4OpenGLXmRadioButton (const char* n,
00042 XtCallbackRec* c,
00043 G4bool d,
00044 G4int num)
00045 {
00046 name = n;
00047 callback = c;
00048 default_button = d;
00049 number = num;
00050 }
00051
00052 G4OpenGLXmRadioButton::~G4OpenGLXmRadioButton ()
00053 {}
00054
00055 void G4OpenGLXmRadioButton::SetName (const char* n)
00056 {
00057 name = n;
00058 XmString button_string = XmStringCreateLocalized ((char*)name);
00059 XtVaSetValues (button,
00060 XmNlabelString, button_string,
00061 NULL);
00062 XmStringFree (button_string);
00063 }
00064
00065 const char* G4OpenGLXmRadioButton::GetName ()
00066 {
00067 return name;
00068 }
00069
00070 void G4OpenGLXmRadioButton::AddYourselfTo (G4OpenGLXmVWidgetContainer* container)
00071 {
00072
00073 pView = container->GetView ();
00074 ProcesspView ();
00075 parent = container->GetPointerToWidget ();
00076 XmString button_string = XmStringCreateLocalized ((char*)name);
00077 button = XtVaCreateManagedWidget (name,
00078 xmToggleButtonWidgetClass,
00079 *parent,
00080
00081 XmNlabelString, button_string,
00082 XmNset, default_button,
00083 XmNuserData, number,
00084
00085 XtNvisual, visual,
00086 XtNdepth, depth,
00087 XtNcolormap, cmap,
00088 XtNborderColor, borcol,
00089 XtNbackground, bgnd,
00090
00091 NULL);
00092
00093 XtAddCallbacks (button,
00094 XmNarmCallback,
00095 callback);
00096
00097 XmStringFree (button_string);
00098 }
00099
00100 Widget* G4OpenGLXmRadioButton::GetPointerToParent ()
00101 {
00102 return parent;
00103 }
00104
00105 Widget* G4OpenGLXmRadioButton::GetPointerToWidget ()
00106 {
00107 return &button;
00108 }
00109
00110 #endif