Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 // 27 // 28 //Top level shell class 29 30 #include "G4OpenGLXmViewer.hh" 31 #include "G4OpenGLXmTopLevelShell.hh" 32 #include "G4OpenGLXmVWidgetContainer.hh" 33 34 #include <Xm/Frame.h> 35 #include <Xm/RowColumn.h> 36 37 G4OpenGLXmTopLevelShell::G4OpenGLXmTopLevelShe 38 char* n) 39 { 40 pView = v; 41 ProcesspView (); 42 name = n; 43 toplevel = XtVaCreatePopupShell 44 (name, 45 topLevelShellWidgetClass, 46 top, 47 48 XtNiconName, name, 49 XtNtitle, name, 50 XmNdeleteResponse, XmDO_NOTHING, 51 XmNisHomogeneous, False, 52 53 XtNvisual, visual, 54 XtNdepth, depth, 55 XtNcolormap, cmap, 56 XtNborderColor, borcol, 57 XtNbackground, bgnd, 58 NULL); 59 60 frame = XtVaCreateManagedWidget (name, 61 xmFrameWidgetClass, 62 toplevel, 63 64 XtNvisual, visual, 65 XtNdepth, depth, 66 XtNcolormap, cmap, 67 XtNborderColor, borcol, 68 XtNbackground, bgnd, 69 70 NULL); 71 72 73 74 top_box = XtVaCreateManagedWidget (name, 75 xmRowColumnWidgetClass, 76 frame, 77 78 XmNadjustMargin, True, 79 XmNisHomogeneous, False, 80 81 XtNvisual, visual, 82 XtNdepth, depth, 83 XtNcolormap, cmap, 84 XtNborderColor, borcol, 85 XtNbackground, bgnd, 86 87 NULL); 88 89 } 90 91 G4OpenGLXmTopLevelShell::~G4OpenGLXmTopLevelSh 92 { 93 XtDestroyWidget (toplevel); 94 } 95 96 void G4OpenGLXmTopLevelShell::AddChild (G4Open 97 { 98 container->AddYourselfTo (this); 99 } 100 101 void G4OpenGLXmTopLevelShell::Realize () 102 { 103 Cardinal num_children; 104 XtVaGetValues (toplevel, 105 XmNnumChildren, &num_children, 106 NULL); 107 // G4cout << name << " now parents " << num_c 108 XtManageChild (toplevel); 109 XtRealizeWidget (toplevel); 110 XtPopup (toplevel, XtGrabNonexclusive); 111 } 112 113 Widget* G4OpenGLXmTopLevelShell::GetPointerToW 114 { 115 return &top_box; 116 } 117 118 char* G4OpenGLXmTopLevelShell::GetName () 119 { 120 return name; 121 } 122