UnityMol  0.9.6-875
UnityMol viewer / In developement
GUIMoleculeController.cs
Go to the documentation of this file.
1 
66 namespace UI {
67  using UnityEngine;
68  using System.Collections;
69  using System.Collections.Generic;
70  using Molecule.Model;
71  using Molecule.View;
73 
74  // using System;
75 
76 
77  public class GUIMoleculeController {
78  // public static int texSet_max=30; /*!< Maximum number of full texture pages */
79  // public static int besttexSet_min=-5; /*!< Maximum number of condensed texture pages (negative value!) */
80  public static bool onlyBestTextures = true;
81  public static int texture_set=0;
82 
83  //bool for default visualisation with Hyperballs
84  public static bool HYPERBALLSDEFAULT = true;
85 
86  // Size values for the orthographic camera
87  public static float minOrthoSize = 1f ;
88  public static float maxOrthoSize = 60f ;
89  public static float orthoSize = 10f; // size of the orthographic camera
90 
91  // bool for showing windows
92  public static bool showOpenMenu = true;
93  //Aurelien : booleans for reaction and animation menu
94  public static bool showReactionMenu = false;
95  public static bool showAnimationMenu = false;
96  public static bool showAtomMenu = false;
97 
98 
99  // public static bool showManipulatorMenu = false; // Careful! This boolean and all associated behavior are backwards!
100  public static bool showSetAtomScales = false;
101 
102  public static bool showResiduesMenu = false;
103  public static bool showAtomsExtendedMenu = false;
104  public static bool showChainsMenu = false;
105  public static bool showPanelsMenu = false;
106 
107  public static bool showArtemisMenu = false;
108  public static bool showHiRERNAMenu = false;
109  public static bool showWebContestMenu = false;
110  public static bool showTestMenu = false;
111 
112  // Generic toggles
113  // DISTRIBUTION
114  public static bool toggle_HELP = false;
115  public static bool toggle_INFOS = true;
116  public static bool toggle_VE_COPYR = true;
117  public static bool toggle_HB_SANIM = false;
118  public static float hb_sanim = 0.7f;
119  public static float hb_ssign = 1.0f;
120  public static bool toggle_HB_RANIM = false;
121  public static float hb_ranim = 0.4f;
122  public static float hb_rsign = 1.0f;
123 
124 
125  public static float depthfactor = -1.0f;
126  public static float drag = 0.6f;
127  public static float spring = 5;
128 
129  public static float fov_angle = 60f;
130  public static float previous_angle = 60f;
131 
132  public static bool toggle_HB_TRANS = true;
133  public static bool toggle_NA_INTERACTIVE = false;
134  public static bool toggle_NA_HIDE = false;
135  public static bool toggle_NA_SWITCH = false;
136  public static bool toggle_NA_HBALLSMOOTH = false;
137  public static bool LOD_INITIALIZED = false;
138  public static bool toggle_NA_MEASURE = false;
139  public static bool toggle_NA_CLICK = false;
140  public static bool toggle_NA_MAXCAM = true;
141  public static bool toggle_NA_AUTOMOVE = false;
142  public static bool toggle_NA_CAMLOCK = false;
143  public static bool toggle_LIGHTCAM = false;
144  public static bool toggle_MESHCOMBINE = false;
145  public static GameObject scenecontroller = null;
146  public static Molecule3D Molecule3DComp = null;
147  protected static Quaternion NA_SCCROT = new Quaternion (-0.1f, 0.1f, 0.0f, -1.0f);
148  protected static Vector3 NA_SCCPOS = new Vector3 (0.4f, 1.8f, -12.0f);
149 
150 
151  public static bool toggle_DISTANCE_CUEING = false;
152  public static bool toggle_HIDE_HYDROGEN=false;
153 
154 
155  public static bool distanceCueingEnabled = false;
156  //
157  // IMD related features
158  //
159  public static bool toggle_IMD = false;
160  // Toggle the total energy plot display
161  public static bool toggleIMDTotalEnergy = false;
162  // Toggle the hydrogen bonds energy plot display
163  public static bool toggleIMDHBondsEnergy = false;
164  // Toggle the stacking energy plot display
165  public static bool toggleIMDStackingEnergy = false;
166 
167  private GUIContent[] listatom;
168  private GUIContent[] listbond;
169  private GUIStyle listStyle;
170 
171  // Bottom left UnityMol icon and link to helptext (currently local file, to be updated).
172  private static Texture2D guicon = Resources.Load ("Artwork/guicon") as Texture2D;
173  // private static string umolbase = "file:///opt/Unity3D/UnityMol";
174  // private static string umolbase = "http://www.shaman.ibpc.fr";
175  private static string umolbase = "http://www.baaden.ibpc.fr/umol";
176 
177 
178 
179  // bool for showing windows
180 
181  public static bool showGrayColor = false;
182 
183  // public bool surfacecolor_show= false;
184  public static bool showSurfaceButton = false;
185 
186  // public bool ParamshowFieldLine=false;
187 
188 
189  public static bool FileBrowser_show = false;
190  public static bool FileBrowser_show2 = false;
192  public static string m_textPath;
193 
194 
195  public static Camera mainCamera;
196  protected static bool showAtoms = true ; // whether atoms are displayed
197  protected static float prevRadius; // previous radius, needed to save the radius when hiding atoms
198 
199 
200  private static GUIContent emptyContent = new GUIContent() ; // We create our own titles, we don't want to use Unity's, because they force window top padding.
201 
202 
203  // MB for centered text
204  protected static GUIStyle CentredText {
205  get {
206  if (m_centredText == null) {
207  m_centredText = new GUIStyle (GUI.skin.label);
208  m_centredText.alignment = TextAnchor.MiddleCenter;
209  }
210  return m_centredText;
211  }
212  }
213 
214  protected static GUIStyle m_centredText;
215 
216  // pos = mul (UNITY_MATRIX_MVP, float4(IN.worldPos,0f));
217  // clip (frac(-(-5+pos.z)/500) - 0.2);
218 
219 
220 
221  //
222  public Texture2D aTexture;
223  public static float backgroundColorRed = 0.0f;
224  public static float backgroundColorGreen = 0.0f;
225  public static float backgroundColorBlue = 0.0f;
226 
227 
228 
229  public static ColorObject BackgroundColor = new ColorObject(Color.black);
230 
231  public static ColorPicker m_colorPicker = null;
232 
233 
234  public static Material electricsymbol = (Material)Resources.Load ("Materials/electricparticle");
235  private bool firstpass = true;
236 
237 
238 
239  public static void CreateColorPicker(ColorObject col, string title, List<string> atomTarget, string residueTarget = "All", string chainTarget = "All")
240  {
241  if(m_colorPicker != null)
242  m_colorPicker = null;
243  m_colorPicker = new ColorPicker(Rectangles.colorPickerRect, col, atomTarget, residueTarget, chainTarget, title);
244  }
245 
247  {
248 
250 
251  scenecontroller = GameObject.Find ("LoadBox");
252  mainCamera = Camera.main;
253  Molecule3DComp = scenecontroller.GetComponent<Molecule3D> ();
254  /*
255  listatom = new GUIContent[11];
256  listatom[0] = new GUIContent("Cube");
257  listatom[1] = new GUIContent("Sphere");
258  listatom[2] = new GUIContent("HyperBall");
259  listatom[3] = new GUIContent("Raycasting");
260  listatom[4] = new GUIContent("Common Billboard");
261  listatom[5] = new GUIContent("RayCasting Billboard");
262  listatom[6] = new GUIContent("HyperBall Billboard");
263  listatom[7] = new GUIContent("RayCasting Sprite");
264  listatom[8] = new GUIContent("Multi-Hyperball");
265  listatom[9] = new GUIContent("CombineMesh HyperBall");
266  listatom[10] = new GUIContent("ParticleBall");
267 
268  listbond = new GUIContent[7];
269  listbond[0] = new GUIContent("Cube");
270  listbond[1] = new GUIContent("Line");
271  listbond[2] = new GUIContent("HyperStick");
272  listbond[3] = new GUIContent("Tube Stick");
273  listbond[4] = new GUIContent("Billboard HyperStick");
274  listbond[5] = new GUIContent("Particle Stick");
275  listbond[6] = new GUIContent("No Stick");
276 */
277 
278 
279  // Make a GUIStyle that has a solid white hover/onHover background to indicate highlighted items
280  listStyle = new GUIStyle ();
281  listStyle.normal.textColor = Color.white;
282  Texture2D tex = new Texture2D (2, 2);
283  Color[] colors = new Color[4];
284  for (int i=0; i<4; i++) {
285  colors [i] = Color.white;
286  }
287 
288  tex.SetPixels (colors);
289  tex.Apply ();
290  listStyle.hover.background = tex;
291  listStyle.onHover.background = tex;
292  listStyle.padding.left = listStyle.padding.right = listStyle.padding.top = listStyle.padding.bottom = 4;
293 
294  aTexture = (Texture2D)Resources.Load ("EnergyGrayColorAlpha");
295  }
296 
301  public void CameraStop ()
302  {
303  Rect screen = new Rect (0, 0, Screen.width, Screen.height);
304 
305  Vector3 mousePos = Input.mousePosition;
306  mousePos.y = Screen.height - mousePos.y;
307 
308  // Check where mouse has to be active
309  // I think GUIUtility.hotControl is enough to check wether the mouse is on a GUI component or on the molecule. [Erwan]
310  // After some tries, it didn't work with some rectangles like ColorPicker or CutPlane...
311  // The mousewheel is still enabled on normal GUIs (not on colorpicker, cutplane...) -> Hotcontrol only watch the mouse click.
312  // Also, small problem when low FPS (I think ?) causing HotControl to activate with a small delay : when you click on menus, the molecule will often move a little before HotControl freeze camera
313  if(
314  !screen.Contains (mousePos) // Avoid scrolling outside the screen
315  || GUIUtility.hotControl != 0 // Mouse on a GUI
316  || (m_colorPicker != null && m_colorPicker.enabled && Rectangles.colorPickerRect.Contains (mousePos)) // Special GUIs
319  // || (FileBrowser_show2 && Rectangles.fileBrowserRect.Contains(mousePos)) // Can't manage to disable scrolling on filebrowser ??
320  || (MouseOverMolecule.stopCamera) // Interactive mode
322  )
323  {
324  maxCamera.cameraStop = true; // stop macCamera
325  UIData.cameraStop2 = true;
326  } else {
327  if (UIData.cameraStop) {
328  maxCamera.cameraStop = true;
329  UIData.cameraStop2 = true;
330  } else {
331  maxCamera.cameraStop = false;
332  UIData.cameraStop2 = false;
333  }
334  }
335 
336  }
341  public static void LightStop (){
342  Transform lightrans = null;
343  lightrans = mainCamera.transform.Find("Directional light");
344  if(lightrans == null){ //Light is not linked to the camera -> link it back
345  lightrans = GameObject.Find("Directional light").transform;
346  // Component halo = lightrans.GetComponent("Halo");
347  // halo.GetType().GetProperty("enabled").SetValue(halo, false, null);
348  lightrans.parent = mainCamera.transform;
349  UIData.lightStop = false;
350  }
351  else{ //Light is linked to the camera -> unlink it = stop the light from moving with the camera
352  // Component halo = lightrans.GetComponent("Halo");
353  // halo.GetType().GetProperty("enabled").SetValue(halo, true, null);
354  lightrans.parent = scenecontroller.transform.parent;
355  UIData.lightStop = true;
356  }
357 
358 
359 
360  }
361 
362  public void DisplayGUI () {
363  int padding = GUI.skin.window.padding.top ;
364  GUI.skin.window.padding.top = 5;
365  GUI.Window (1, Rectangles.mainRect, LoadTypeGUI.MainFun, "");
366  GUI.skin.window.padding.top = padding;
367  // GUI.Window (1, Rectangles.mainRect, loadGUI, "");
368  if (firstpass) {
369  firstpass = false;
370  mainCamera.backgroundColor = new Color (0.0f, 0.0f, 0.0f);
371 
372  }
373 
374  //Display color pickers
375  if (m_colorPicker != null) {
376  m_colorPicker.OnGUI ();
377  }
378  //Update background color
379  backgroundColorRed = BackgroundColor.color.r;
380  backgroundColorGreen = BackgroundColor.color.g;
381  backgroundColorBlue = BackgroundColor.color.b;
382  }
383 
384 
385 
386  private static void VisualControl (){
387  GUILayout.BeginHorizontal ();
388  GUILayout.Label ("Visual", GUILayout.MaxWidth (50));
389 
390  UIData.toggleMouse = GUILayout.Toggle (UIData.toggleMouse, "Mouse");
392 
393  UIData.toggleKey = GUILayout.Toggle (UIData.toggleKey, "Key");
395  GUILayout.EndHorizontal ();
396  }
397 
398  public static float LabelSlider (float sliderValue, float sliderMinValue, float sliderMaxValue, string labelText,
399  string toolTip, bool enable, int sliderwidth, int labelwidth=100, bool newLine = false) {
400  GUI.enabled = enable;
401 
402  GUILayout.BeginHorizontal();
403  GUILayout.Label (new GUIContent (labelText, toolTip), GUILayout.MinWidth (labelwidth));
404  if(newLine) {
405  GUILayout.EndHorizontal();
406  GUILayout.BeginHorizontal();
407  }
408 
409  sliderValue = GUILayout.HorizontalSlider (sliderValue, sliderMinValue, sliderMaxValue, GUILayout.Width (sliderwidth));
410 
411  GUILayout.EndHorizontal();
412 
413  if (Event.current.type == EventType.Repaint)
414  MoleculeModel.newtooltip = GUI.tooltip;
415 
416  return sliderValue;
417  }
418 
419 
420 
421  // All the functions that open a new window in the GUI. =============================================================================================
422 
423  public void SetAdvMenu () {
425  Rectangles.advOptionsRect = GUILayout.Window(142, Rectangles.advOptionsRect, AdvancedOptionsOldGUI.AdvOptions, emptyContent);
426  }
427 
428  public void SetGuidedMenu () {
431  }
432 
433  public void SetAtomMenu () {
434  if (showAtomMenu)
436  }
437 
438  public void SetSecStructMenu () {
441  }
442 
443  //public static void SetAtomScales() {
444  // Rectangles.atomScalesRect = GUI.Window( 40, Rectangles.atomScalesRect, GUIDisplay.AtomScales, emptyContent);
445  //}
446 
447  public static void SetPanels () {
448  Rectangles.panelsMenuRect = GUILayout.Window (44, Rectangles.panelsMenuRect, GUIDisplay.PanelsMenu, emptyContent);
449  }
450 
451  public static void SetAtomsExtended () {
452  //Rectangles.atomsExtendedMenuRect = GUI.Window (45, Rectangles.atomsExtendedMenuRect, GUIDisplay.AtomsExtendedMenu, emptyContent);
454  }
455 
456  public static void SetResidues () {
457  Rectangles.residuesMenuRect = GUILayout.Window (46, Rectangles.residuesMenuRect, GUIDisplay.ResiduesMenu, emptyContent);
458  }
459 
460  public static void SetChains () {
461  Rectangles.chainsMenuRect = GUILayout.Window (47, Rectangles.chainsMenuRect, GUIDisplay.ChainsMenu, emptyContent);
462  }
463 
464  public void SetAtomType () {
465  if (RepresentationOldGUI.showAtomType && showAtomMenu) {
466  // GUIContent c = new GUIContent ("Set Atom Type", "Set the atom type");
468  // Debug.Log(Screen.width-195);
469  }
470  }
471 
472  public void SetBfactorMenu () {
474  // GUIContent c=new GUIContent("Set Atom Type","Set the atom type");
475  Rectangles.surfaceMenuRect = GUI.Window (20, Rectangles.surfaceMenuRect, SurfaceOldGUI.Surface, emptyContent);
476  // Debug.Log(Screen.width-195);
477  if (UnityMolMain.getSurfaceManager().getSurfaces().Length > 0)
479  }
480  }
481 
482 
483  public void SetBondType () {
484  if (RepresentationOldGUI.showBondType && showAtomMenu)
485  Rectangles.bondTypeRect = GUI.Window (11, Rectangles.bondTypeRect, RepresentationOldGUI.Bond, emptyContent);
486  }
487 
488  // T.T Sugar Menu
489  public void setSugarMenu(){
491  Rectangles.SugarMenuRect = GUI.Window(454654, Rectangles.SugarMenuRect, SugarOldGUI.SugarM, emptyContent);
492  }
493 
494 
495  public void setSugarRibbonsTuneMenu(){
498  }
499 
500 
501  public void setColorTuneMenu(){
503  Rectangles.ColorTuneRect = GUI.Window(45154, Rectangles.ColorTuneRect, SugarOldGUI.ColorTuneMenu, emptyContent);
504  }
505  public void SetCubeLineBond() {
506  if (((UIData.bondtype == UIData.BondType.cube) || (UIData.bondtype == UIData.BondType.line))
510  } else
512  }
513 
514 
515  public void SetEffectType () {
518  }
519 
520  public void SetFieldMenu () {
523 
526  }
527 
528  public void SetSurfaceMenu () {
530  // Debug.Log("test 42000");
531  // GUIContent c=new GUIContent("Set Surface Params");
532 
533  Rectangles.surfaceMenuRect = GUI.Window (20, Rectangles.surfaceMenuRect, SurfaceOldGUI.Surface, emptyContent);
534  // Debug.Log(Screen.width-195);
535 
536  if (UnityMolMain.getSurfaceManager().getSurfaces().Length > 0) {
538  }
539  }
540  }
541 
542  public void SetHydroMenu(){
544  Rectangles.hydroMenuRect = GUI.Window (2001, Rectangles.hydroMenuRect, SurfaceOldGUI.HydroMenu, emptyContent);
545  }
546 
547 
548  public void SetHyperBall () {
551  }
552 
553  public void SetSurfaceTexture () {
555  GUIDisplay.m_texture = false;
556  // GUI.Window(41, new Rect(texturetypexstart,texturetypeystart,texturewidth,textureheight),loadSurfaceTexture, "Surface texture parameters");
557  Rectangles.textureRect = GUI.Window (41, Rectangles.textureRect, SurfaceOldGUI.SurfaceTexture, emptyContent);
558  }
559  }
560 
561  public void SetSurtfaceMobileCut () {
564  }
565 
566  public void SetSurfaceCut () {
570  }
571  }
572 
573  public void SetBackGroundType () {
576  }
577 
578  public void SetMetaphorType () {
579  if (RepresentationOldGUI.showMetaphorType && showAtomMenu)
581  }
582 
583  public void SetArtemisMenu () {
584  if (showArtemisMenu)
586  }
587 
588  public void SetHiRERNAMenu () {
589  if (showHiRERNAMenu)
591  }
592 
593  public void SetWebContestMenu () {
594  if (showWebContestMenu)
596  }
597 
598 
599  // end of windows functions =============================================================================================
600 
601  public void MinLoadTypeGUIAtom (int b) {}
602 
603  public static string queryBestTextures(){
604  if (onlyBestTextures)
605  return("On");
606  else
607  return("Off");
608  }
609 
610 
611  // help window at the start of program =============================================================================================
612  public void RenderHelp () {
613  if (toggle_HELP) {
614  if (!toggle_VE_COPYR)
615  toggle_VE_COPYR = true;
616 
617  GUI.Box (new Rect (Screen.width / 4, Screen.height / 4 + 30, Screen.width / 2, Screen.height / 2 - 60), "UNITY MOL QUICK HELP");
618  GUILayout.BeginArea (new Rect (5 + Screen.width / 4, 25 + Screen.height / 4 + 30, 0.5f * Screen.width, 0.5f * Screen.height - 25));
619  GUILayout.Label ("Welcome to UnityMol. Most program functions will show a tooltip in the bottom left corner to provide some assistance.\n");
620  GUILayout.Label ("The main menu functions are accessible from the buttons on the top left part of the screen." +
621  "GUI elements will be arranged along the screen borders in order to leave space in the middle for the molecule view." +
622  "The same button that opens a menu can usually also be re-used to close it again.\n");
623  GUILayout.Label ("From the Open menu you can import PDB files, obj meshes or networks in cytoscape format." +
624  "Then modify the visual aspect with the options in the Atoms menu. Generate (or read) surfaces from the Surface menu." +
625  "The Electrostatics menu provides functionality to control the aspect of animated field lines." +
626  "Some general functionality is assembled in the Display menu.\n");
627  GUILayout.Label ("UnityMol's functionality is described in detail in the corresponding publication (PLoS One 2013, 8(3):e57990)." +
628  "A tutorial image summarizing essential functions is also provided." +
629  "In the future, clicking on the bottom left UnityMol icon will open the online help (keep posted)." +
630  "Further information can be obtained from the UnityMol SourceForge website and mailing list.\n");
631  GUILayout.Label ("Keyboard Controls :\n"+
632  "Move the molecule with the arrow Keys or Q/E/Z/X. Rotate it with W/A/S/D. Modify zoom with B/N.\n"+
633  "Focus an atom by selecting it and pressing T, reset camera and focus with R. Hide GUI with Backspace.\n");
634  // MB: these keys don't seem to work anymore?? check:
635  // GUILayout.Label("Use the cursor keys to navigate the scene: W/X for rotation D/E/Q/S/Z for pan,
636  // and B/N for zoom if click the key choice. You can also use the Mouse button to navigate if click the mouse choice.
637  // Alternatively,if you have a joypad you can rotation and zoom and pan by the button of the joypad, and also the radius of the atoms");
638  // GUILayout.Label ("You can press the delete key to activate some hidden features on the left-hand atoms menu (bugs included!).");
639  // MB: the equal key does not seem to work?
640  // GUILayout.Label("If you press the equal key, the octree dividing blocks for the particle system are shown.");
641  GUILayout.Label ("\nUnityMol is an open source project by Marc Baaden and the LBT team. version "+ UnityMolMain.getVersionString() +" (c) 2009-16.");
642  GUILayout.EndArea ();
643  // Debug.Log("Help information window");
644  if (GUI.Button (new Rect (Screen.width / 4, 0.75f * Screen.height - 20 - 30, Screen.width / 2, 20), "Close unity mol help window"))
645  toggle_HELP = false;
646  }
647 
648  // Print FPS and atom/bond count if activated ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
649 
650  if(toggle_INFOS) {
651  GUI.Label(Rectangles.fpsInfosRect, new GUIContent(
652  "Atom count : " + MoleculeModel.atomsnumber.ToString()
653  + "\n Bond count : " + MoleculeModel.bondsnumber.ToString()));
654  }
655 
656  // Print copyright and icon if activated :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
657  if (toggle_VE_COPYR) {
658  // GUI.Box (new Rect (Screen.width - 700, Screen.height - 25, 450, 25), "(c)opyright 2009-13 by LBT team/M. Baaden, <baaden@smplinux.de>");
659  GUI.Box (new Rect (Rectangles.webHelpWidth, Screen.height - 25, Screen.width, 25), UnityMolMain.getVersionString() +" (c)opyright 2009-16 by LBT team/M. Baaden, <baaden@smplinux.de>, S. Doutreligne, X. Martinez; SweetUnityMol by Tubiana, Imberty, Perez & MB");
660  // Real logo size: 87 x 263 // 175 x 58
661  // if (GUI.Button ( new Rect(0,Screen.height-58, 175, 58), new GUIContent(guicon,"Open the Unity Mol manual in a web browser"), GUI.skin.GetStyle("label")))
662  if (GUI.Button (Rectangles.webHelpRect, new GUIContent (guicon, "Open the Unity Mol manual in a web browser"))) {
663  // Application.OpenURL (umolbase+"/Assets/_Documentation/Manual.html");
664  // Application.OpenURL (umolbase + "/umolfigs2.png");
665  Application.OpenURL (umolbase + "/page2/index.html");
666  }
667 
668  }
669  #if !UNITY_WEBPLAYER
670  {
671  // if (GUI.Button (new Rect (principalxstart + principalwidth + 25, principalystart, 40, 20), new GUIContent ("EXIT", "Exit the Unity Mol program"))) {
672  if (GUI.Button (Rectangles.exitRect, new GUIContent ("EXIT", "Exit the UnityMol program")))
673  Application.Quit ();
674  }
675  #endif
676  if (GUI.Button (Rectangles.helpRect, new GUIContent ("?", "Open quick help for the Unity Mol program"))) {
677  toggle_HELP = !toggle_HELP;
678  }
679  } // End of RenderHelp
680  }
681 
682 
683 
684 }
static void AtomsExtendedMenu(int a)
Open the atoms extended selection Menu to apply changes to a specific atom.
Definition: GUIDisplay.cs:1547
static void ChainsMenu(int a)
Open the Chain selection Menu to apply changes to a specific chain.
Definition: GUIDisplay.cs:1656
static void Electrostatics(int a)
Defines the electrostatic menu window, which is opened from the main menu window. ...
static void SurfaceParams(int a)
Defines the Surface Parameters menu window.
static void ResiduesMenu(int a)
Open the Residue selection Menu to apply changes to a specific residue.
Definition: GUIDisplay.cs:1604
static bool showElectrostaticsMenu
bool enabled
Definition: ColorPicker.cs:98
static Rect webContestMenuRect
Definition: Rectangles.cs:400
static void PanelsMenu(int a)
Open the Panel selection Menu to apply premade color and texture panel.
Definition: GUIDisplay.cs:1409
static Rect surfaceMenuRect
Definition: Rectangles.cs:166
static Rect hyperballRect
Definition: Rectangles.cs:304
static Rect artemisMenuRect
Definition: Rectangles.cs:375
static void AtomStyle(int a)
Defines the style of atoms.
static ImprovedFileBrowser m_fileBrowser
static Rect exitRect
Definition: Rectangles.cs:100
static bool showHydroMenu
static Rect backTypeRect
Definition: Rectangles.cs:337
static void Background(int a)
Defines the Background selection window.
static Rect colorPickerRect
Definition: Rectangles.cs:246
static bool showColorTuneMenu
Definition: SugarOldGUI.cs:22
static Rect surfaceCutRect
Definition: Rectangles.cs:190
static bool lightStop
Definition: UIData.cs:133
static ColorPicker m_colorPicker
static bool cameraStop2
Definition: UIData.cs:135
GameObject[] getSurfaces()
static void AtomMenu(int a)
Defines the Atom menu.
static void HyperballStyle(int a)
Defines the Hyperball Style window.
static bool toggleMouse
Definition: UIData.cs:119
static Rect panelsMenuRect
Definition: Rectangles.cs:118
static Rect fpsInfosRect
Definition: Rectangles.cs:354
static void SurfaceCut(int a)
Defines the static surface cut window, which is opened from the Surface parameters menu...
static void FieldLines(int a)
Defines the Field Lines window, which is opened from the Electrostatic window.
static Rect GuidedNavRect
Definition: Rectangles.cs:293
static int webHelpWidth
Definition: Rectangles.cs:342
static Rect atomStyleRect
Definition: Rectangles.cs:143
static ColorObject BackgroundColor
static Rect mainRect
Definition: Rectangles.cs:96
static Rect metaphorRect
Definition: Rectangles.cs:321
void OnGUI()
Definition: ColorPicker.cs:167
static void SecStructMenu(int a)
Defines the menu for handling secondary structures (with ribbons)
Color color
Definition: ColorObject.cs:72
static void SugarRibbonsTune(int a)
Definition: SugarOldGUI.cs:144
static bool showSurfaceMenu
static Rect hydroMenuRect
Definition: Rectangles.cs:182
static void MoveCutPlane(int a)
Defines the move cut plane window, that lets the user change the cut plane of the surface by clicking...
static void Bond(int a)
Defines the bond type selection menu window, which is called from the appearance menu.
static void Surface(int a)
Defines the Surface menu window, which is opened from the main menu window.
void CameraStop()
Prevents the camera from moving along with the mouse if the cursor is over any active menu or button...
static string getVersionString()
Definition: UnityMolMain.cs:19
static Rect webHelpRect
Definition: Rectangles.cs:346
static Rect bondTypeRect
Definition: Rectangles.cs:151
static bool showBfactorMenu
static Rect textureRect
Definition: Rectangles.cs:312
static Rect hirernaMenuRect
Definition: Rectangles.cs:394
static float LabelSlider(float sliderValue, float sliderMinValue, float sliderMaxValue, string labelText, string toolTip, bool enable, int sliderwidth, int labelwidth=100, bool newLine=false)
static void CubeLineBond(int a)
Defines the cube/line bond window, that lets users define how wide they want their bonds...
static void Effects(int a)
Defines the Effect selection window for SSAO, DOF, etc.
static bool showSugarRibbonsTuneMenu
Definition: SugarOldGUI.cs:21
static Rect fieldLinesRect
Definition: Rectangles.cs:222
static bool showSurfaceCut
static Rect electroMenuRect
Definition: Rectangles.cs:214
static void SugarM(int a)
Definition: SugarOldGUI.cs:25
static void ArtemisMenu(int a)
Artemis main GUI window rendering procedure.
static Rect SugarRibbonsTuneRect
Definition: Rectangles.cs:276
static void ColorTuneMenu(int a)
Definition: SugarOldGUI.cs:280
static bool showSugarChainMenu
Definition: SugarOldGUI.cs:20
static bool stopCamera
!WiP Includes FLAGS of GUI.
Definition: UIData.cs:78
static void AdvOptions(int a)
Defines the advanced options menu window, which is opened from the main menu window.
static Rect atomMenuRect
Definition: Rectangles.cs:135
static void HiRERNAContestMenu(int a)
static bool toggleKey
Definition: UIData.cs:120
static void MainFun(int a)
Defines the main menu of the GUI.
Definition: LoadTypeGUI.cs:262
static BondType bondtype
Definition: UIData.cs:141
!WiP manage GUI, and provide static strings for the GUI.
Definition: GUIDisplay.cs:94
static void CreateColorPicker(ColorObject col, string title, List< string > atomTarget, string residueTarget="All", string chainTarget="All")
static Rect ColorTuneRect
Definition: Rectangles.cs:285
static void HydroMenu(int a)
static Rect surfaceMobileCutRect
Definition: Rectangles.cs:198
static void GuidedOptions(int a)
static Rect residuesMenuRect
Definition: Rectangles.cs:362
static void HiRERNAMenu(int a)
Definition: HiRERNAOldGUI.cs:7
static Rect surfaceParametersRect
Definition: Rectangles.cs:174
static Rect secStructMenuRect
Definition: Rectangles.cs:158
static bool cameraStop
Definition: UIData.cs:132
static Rect movePlaneRect
Definition: Rectangles.cs:206
static bool showSurfaceMobileCut
static Rect effectTypeRect
Definition: Rectangles.cs:329
static SurfaceManager getSurfaceManager()
Definition: UnityMolMain.cs:24
static bool m_texture
Definition: GUIDisplay.cs:125
static Rect helpRect
Definition: Rectangles.cs:98
static void SurfaceTexture(int a)
Defines the texture selection window.
static Rect SugarMenuRect
Definition: Rectangles.cs:267
static void Metaphor(int a)
Defines the Metaphor menu window, which is launched by the Metaphor button in the Hperball Style wind...
static Rect cubeLineBondRect
Definition: Rectangles.cs:296
static void LightStop()
Prevents the light from moving with the camera.
static void initStyles()
Definition: GUIDisplay.cs:1856
static bool showSurfaceTexture
static Rect advOptionsRect
Definition: Rectangles.cs:254
static bool showSecStructMenu
Triggers the secondary structure menu display.
static bool cameraStop
Definition: maxCamera.cs:88
static Rect chainsMenuRect
Definition: Rectangles.cs:368
static void SurfaceMobileCut(int a)
Defines the mobile surface cut window, which is opened from the Surface parameters menu...
Definition: GUIDisplay.cs:66
static Rect atomsExtendedMenuRect
Definition: Rectangles.cs:365