# Copyright 2004-2008 Nanorex, Inc. See LICENSE file for details. """ WhatsThisText_for_MainWindow.py This file provides functions for setting the "What's This" and tooltip text for widgets in the NE1 Main Window, except widgets in Property Managers. Edit WhatsThisText_for_PropertyManagers.py to set "What's This" and tooltip text for widgets in the NE1 Property Managers. @version: $Id$ @copyright: 2004-2008 Nanorex, Inc. See LICENSE file for details. Note: bruce 080210 split whatsthis_utilities.py out of this file into their own new file. To do: - Change the heading for all Display Style actions from "Display " to "Apply Display Style to the selection". Change tooltips and wiki help pages as well. - Replace current text string name with "_text" (like "Open File" example) """ from PyQt4.Qt import QWhatsThis def createWhatsThisTextForMainWindowWidgets(win): """ Adds the "What's This" help text to items found in the NE1 mainwindow toolbars and menus . @param win: NE1's mainwindow object. @type win: U{B{QMainWindow}} @note: Property Managers specify "What's This" text for their own widgets, usually in a method called add_whats_this_text(), not in this file. """ # # File Toolbar # # Open File _text = \ "Open File (Ctrl + O)"\ "


"\ "Opens a new file."\ "

" win.fileOpenAction.setWhatsThis( _text ) # Import File fileImportText = \ "Open Babel"\ "

"\ "Imports a file of any chemical file format supported by "\ "Open Babel into the current Part."\ "

" win.fileImportOpenBabelAction.setWhatsThis(fileImportText) # Close File fileCloseAction = \ "Close and begin a new model"\ "

"\ "Close the .mmp file currently being edited and loads a new one "\ "

" win.fileCloseAction.setWhatsThis(fileCloseAction) #Export File fileExportText = \ "Open Babel"\ "

"\ "Exports the current part in any chemical file format "\ "supported by Open Babel. Note that exclusive "\ "features of NanoEngineer-1 are not saved to the exported file."\ "

" win.fileExportOpenBabelAction.setWhatsThis(fileExportText) # Save File fileSaveText = \ "Save File (Ctrl + S) "\ "

"\ "
"\ "Saves the current file."\ "

" win.fileSaveAction.setWhatsThis( fileSaveText ) # Save File As fileSaveAsText = \ "Save File As"\ "

"\ "Allows the user to save the current .mmp file with a new name or."\ "in a different location"\ "

" win.fileSaveAsAction.setWhatsThis( fileSaveAsText ) # Import Molecular Machine Part fileInsertMmpActionText = \ " Molecular Machine Part"\ "

"\ "
"\ "Inserts an existing .mmp file into the current part."\ "

" win.fileInsertMmpAction.setWhatsThis( fileInsertMmpActionText ) # Import Protein Data Bank File fileInsertPdbActionText = \ " Protein Databank File"\ "

"\ "Inserts an existing .pdb file into the current part."\ "

" win.fileInsertPdbAction.setWhatsThis( fileInsertPdbActionText ) # Import AMBER .in file fileInsertInActionText = \ " AMBER .in file fragment"\ "

"\ "Inserts a fragment of an AMBER .in file into the current part.

"\ "The fragment should just contain the lines defining the actual z-matrix. "\ "Loop closure bonds are not created, nor are bond orders inferred."\ "

" win.fileInsertInAction.setWhatsThis( fileInsertInActionText ) # Export Protein Data Bank File fileExportPdbActionText = \ " Export Protein Databank File"\ "

"\ "Saves the current .mmp model as a Protein Databank File"\ "

" win.fileExportPdbAction.setWhatsThis( fileExportPdbActionText ) # Export Jpeg File fileExportJpgActionText = \ " Export JPEG File"\ "

"\ "Saves the current .mmp model as a JPEG File"\ "

" win.fileExportJpgAction.setWhatsThis( fileExportJpgActionText ) # Export PNG File fileExportPngActionText = \ " Export PNG File"\ "

"\ "Saves the current .mmp model as a PNG File"\ "

" win.fileExportPngAction.setWhatsThis( fileExportPngActionText ) # Export POV-ray File fileExportPovActionText = \ " Export POV-Ray File"\ "

"\ "Saves the current .mmp model as a POV-Ray File"\ "

" win.fileExportPovAction.setWhatsThis( fileExportPovActionText ) # Export POV-ray File fileExportAmdlActionText = \ " Export Animation Master Model"\ "

"\ "Saves the current .mmp model as an Animation Master Model File"\ "

" win.fileExportAmdlAction.setWhatsThis( fileExportAmdlActionText ) # Exit fileExitActionText = \ " Exit NanoEngineer-1"\ "

"\ "Closes NanoEngineer-1"\ "

"\ "You will be prompted to save any current changes to the .mmp file"\ "

" win.fileExitAction.setWhatsThis( fileExitActionText ) # # Edit Toolbar # # Make Checkpoint ### editMakeCheckpointText = \ "Make Checkpoint"\ "

"\ "
"\ "Make Undo checkpoint."\ "

" win.editMakeCheckpointAction.setWhatsThis( editMakeCheckpointText ) # Automatic Checkpointing ### [minor changes, bruce 060319] editAutoCheckpointingText = \ "Automatic Checkpointing"\ "

"\ "Enables/Disables Automatic Checkpointing. When enabled, "\ "the program maintains the Undo stack automatically. When disabled, "\ "the user is required to manually create Undo checkpoints using the "\ "Make Checkpoint button: "\ "

"\ "

"\ "

"\ "

Automatic Checkpointing can impact program performance. "\ "By disabling Automatic Checkpointing, the program will run faster. "\ "

"\ "

Remember that you must make your own Undo checkpoints "\ "manually when Automatic Checkpointing is disabled."\ "

" win.editAutoCheckpointingAction.setWhatsThis( editAutoCheckpointingText ) # Clear Undo Stack ### [minor changes, bruce 060319] editClearUndoStackText = \ "Clear Undo Stack"\ "

"\ "Clears all checkpoints on the Undo and Redo "\ "stacks, freeing up memory."\ "

" win.editClearUndoStackAction.setWhatsThis( editClearUndoStackText ) # Undo editUndoText = \ "Undo (Ctrl + Z) "\ "

"\ "
"\ "Reverses the last edit or command which changed structure "\ "or selection. "\ "

" #bruce 060317 revised this text to reflect #what it does in A7; 060320 added 1421-not-fixed warning win.editUndoAction.setWhatsThis( editUndoText ) win.editUndoText = editUndoText #bruce 060317 to help fix bug 1421 in #Undo whatsthis wiki help link # Redo from platform_dependent.PlatformDependent import is_macintosh if is_macintosh(): redo_accel = "(Ctrl + Shift + Z)" # note: this is further #modified (Ctrl -> Cmd) by other code # changing this is partly redundant with code in undo*.py, #but as of 060317 it's desirable in editRedoText too else: redo_accel = "(Ctrl + Y)" editRedoText = \ "Redo %s
"\ "
"\ "Restores a change which was undone using the Undo command."\ "
"\ "

" \ % redo_accel # This "known bug" (below) is no longer a bug, at least it works on Windows. # I'll ask someone with a MacOSX machine to test. --Mark 2008-05-05. #"Known bug: the link to wiki help for Redo "\ #"only works if you got this popup from the Edit menu item "\ #"for Redo, not from the Redo toolbutton.
"\ #"

" \ #% redo_accel #bruce 060317 revised this text to be more accurate, and split #out redo_accel; 060320 added 1421-not-fixed warning win.editRedoAction.setWhatsThis( editRedoText ) win.editRedoText = editRedoText #bruce 060317 to help fix bug 1421 #in Redo whatsthis wiki help link # Cut editCutText = \ "Cut (Ctrl + X) "\ "

"\ "
"\ "Removes the selected object(s) and stores the cut data on the"\ "clipboard."\ "

" win.editCutAction.setWhatsThis( editCutText ) # Copy editCopyText = \ "Copy (Ctrl + C) "\ "

"\ "
"\ "Places a copy of the selected chunk(s) on the clipboard "\ "while leaving the original chunk(s) unaffected."\ "

" win.editCopyAction.setWhatsThis( editCopyText ) # Paste editPasteText = \ "Paste (Ctrl + V) "\ "

"\ "
"\ "Paste places the user in Build mode "\ "where copied chunks on the clipboard can be pasted into "\ "the model by double clicking in empty space. If the "\ "current clipboard chunk has a hotspot, "\ "it can be bonded to another chunk by single clicking on "\ "one of the chunk's bondpoints."\ "

"\ "

A Hotspot is a green bondpoint on a "\ "clipboard chunk indicating it will be the active "\ "bondpoint which will connect to another chunk's bondpoint. "\ "To specify a hotspot on the clipboard chunk, click on one "\ "of its bondpoints in the MMKit's Thumbview."\ "

" win.editPasteAction.setWhatsThis( editPasteText ) # Paste From Clipboard pasteFromClipboardText = \ "Paste From Clipboard "\ "

"\ ""\ "
"\ "Allows the user to preview the contents of the "\ "clipboard and past items into the Workspace."\ "The preview window also allows the user to set "\ "hot spots on chunks."\ "

" win.pasteFromClipboardAction.setWhatsThis( pasteFromClipboardText ) win.editDnaDisplayStyleAction.setWhatsThis( """Edit DNA Display Style


Edit the DNA Display Style settings used whenever the Global Display Style is set to DNA Cylinder. These settings also apply to DNA strands and segments that have had their display style set to DNA Cylinder.

""") win.editProteinDisplayStyleAction.setWhatsThis( """Edit Protein Display Style


Edit the Protein Display Style settings used whenever the Global Display Style is set to Protein.

""") #Rename (deprecated by Rename Selection) EditrenameActionText = \ "Rename "\ "

"\ ""\ "
"\ "Allows the user to rename the selected chunk "\ "

" win.editRenameAction.setWhatsThis( EditrenameActionText ) #Rename selection _text = \ "Rename Selection "\ "

"\ ""\ "
"\ "Rename the selected object(s). Only leaf nodes in the model tree are "\ "renamed. Specifically, group nodes are not renamed, even if they are "\ "selected)."\ "

"\ "To uniquely name multiple objects, include the # character "\ "at the end of the name. This (re)numbers the selected objects."\ "

" win.editRenameSelectionAction.setWhatsThis( _text ) #editAddSuffixAction EditeditAddSuffixActionActionText = \ "Add Suffix "\ "

"\ ""\ "
"\ "Add suffix to the name of the selected object(s)."\ "

" win.editAddSuffixAction.setWhatsThis( EditeditAddSuffixActionActionText ) # Delete editDeleteText = \ "Delete (DEL) "\ "

"\ "
"\ "Deletes the selected object(s). "\ "For this Alpha release, deleted objects may "\ "be permanently lost, or they might be recoverable "\ "using Undo."\ "

" #bruce 060212 revised above text (and fixed spelling error); #should be revised again before A7 release win.editDeleteAction.setWhatsThis( editDeleteText ) # Color Scheme _text = \ "Color Scheme"\ "

"\ "
"\ "Edit and save/restore favorite NanoEngineer-1 color schemes "\ "including background color, selection/highlight color, etc."\ "

" win.colorSchemeAction.setWhatsThis( _text ) # Lighting Scheme _text = \ "Lighting Scheme"\ "

"\ "
"\ "Edit and save/restore favorite NanoEngineer-1 lighting schemes."\ "

" win.lightingSchemeAction.setWhatsThis( _text ) #Preferences Dialog editPrefsText = \ "Preferences Dialog"\ "

"\ "Allows you to edit various user preferences "\ "such as changing atom, bond display properties,"\ "lighting, background color, window position and"\ "size, plugins etc.

" win.editPrefsAction.setWhatsThis( editPrefsText ) # # View Toolbar # # Home View setViewHomeActionText = \ "Home (Home)"\ "

"\ "
"\ "When you create a new model, it appears in a "\ "default view orientation (FRONT view). When you "\ "open an existing model, it appears in the "\ "orientation it was last saved. You can change the "\ "default orientation by selecting Set Home View "\ "to Current View from the View menu."\ "

" win.setViewHomeAction.setWhatsThis( setViewHomeActionText ) # Zoom to fit setViewFitToWindowActionText = \ "Zoom to Fit"\ "


"\ "Refits the model to the screen so you can "\ "view the entire model."\ "

" win.setViewFitToWindowAction.setWhatsThis( setViewFitToWindowActionText ) # Recenter setViewRecenterActionText = \ "Recenter"\ "

"\ "
"\ "Changes the view center and zoom factor so "\ "that the origin is in the center of the view "\ "and you can view the entire model."\ "

" win.setViewRecenterAction.setWhatsThis( setViewRecenterActionText ) # Zoom to Area (used to be Zoom Tool). Mark 2008-01-29. setzoomToAreaActionText = \ "Zoom to Area"\ "

"\ "
"\ "Allows the user to zoom into a specific area of "\ "the model by specifying a rectangular area. "\ "The area is specified by holding down the left button, "\ "dragging the mouse, and then releasing the mouse button."\ "

"\ "Pressing the Escape key exits Zoom to Area and returns to the"\ "previous command."\ "

"\ "

A mouse with a mouse wheel can also be used to "\ "zoom in/out."\ "

"\ "

The keyboard can also be used to zoom in/out:"\ "
- Zoom in by pressing the 'period' key ( '.' )."\ "
- Zoom out by pressing the 'comma' key ( ',' )."\ "

" win.zoomToAreaAction.setWhatsThis( setzoomToAreaActionText ) # Zoom (In/Out) setzoomInOutActionText = \ "Zoom In/Out"\ "

"\ "
"\ "Enters a temporary zoom mode that allows the user to zoom in or out "\ "using the mouse. Press ESC or click this button again to exit "\ "temporary zoom mode and return to the previous command."\ "

"\ "

- Zoom in by holding down the mouse button and pulling "\ "the mouse closer (cursor moves down)."\ "
- Zoom out by holding the mouse button and pushing "\ "the mouse away (cursor moves up)."\ "

"\ "

A mouse with a mouse wheel can also be used to "\ "zoom in/out."\ "

"\ "

The keyboard can also be used to zoom in/out:"\ "
- Zoom in by pressing the 'period' key ( '.' )."\ "
- Zoom out by pressing the 'comma' key ( ',' )."\ "

" win.zoomInOutAction.setWhatsThis( setzoomInOutActionText ) #Zoom To Selection setViewZoomtoSelectionActionText = \ "Zoom to Selection"\ "

"\ "
"\ " Zooms view to selected atoms or chunks. "\ "

" win.setViewZoomtoSelectionAction.setWhatsThis\ ( setViewZoomtoSelectionActionText ) # Pan Tool setpanToolActionText = \ "Pan Tool"\ "

"\ "
"\ "Allows X-Y panning using the left mouse button."\ "

"\ "Pressing the Escape key exits Pan Tool and returns to the"\ "previous command."\ "

"\ "

Users with a 3-button mouse can pan the model at "\ "any time by pressing the middle mouse button while "\ "holding down the Shift key."\ "

" win.panToolAction.setWhatsThis( setpanToolActionText ) # Rotate Tool setrotateToolActionText = \ "Rotate Tool"\ "

"\ "
"\ "Allows free rotation using the left mouse button."\ "

"\ "

Holding down the A key activates auto-rotation, which will "\ "continue rotation after releasing the mouse button (try it!)."\ "Pressing the Escape key exits Rotate Tool and returns to the"\ "previous command."\ "

"\ "

Users with a 3-button mouse can rotate the "\ "model at any time by pressing "\ "the middle mouse button and dragging "\ "the mouse."\ "

" win.rotateToolAction.setWhatsThis( setrotateToolActionText ) #Standard Views standardViews_btnText = \ "Standard Views"\ "

"\ "
"\ "Displays the Standards Views Menu "\ "

" win.standardViews_btn.setWhatsThis( standardViews_btnText ) # Orthographic Projection setViewOrthoActionText = \ "Orthographic Projection"\ "

"\ "Sets nonperspective (or parallel) projection, "\ "with no foreshortening."\ "

" win.setViewOrthoAction.setWhatsThis( setViewOrthoActionText ) # Perspective Projection setViewPerspecActionText = \ "Perspective Projection"\ "

"\ "Set perspective projection, drawing objects "\ "slightly larger that are closer to the viewer."\ "

" win.setViewPerspecAction.setWhatsThis( setViewPerspecActionText ) # Normal To viewNormalToActionText = \ "Set View Normal To"\ "

"\ "
"\ "Orients view to the normal vector of the plane "\ "defined by 3 or more selected atoms, or a jig's "\ "axis."\ "

" win.viewNormalToAction.setWhatsThis( viewNormalToActionText ) # Parallel To _text = \ "Set View Parallel To"\ "

"\ "
"\ "Orients view parallel to the vector defined by "\ "2 selected atoms."\ "

" win.viewParallelToAction.setWhatsThis( _text ) # Save Named View _text = \ "Save Named View"\ "

"\ "
"\ "Saves the current view as a custom "\ "named view and places it in "\ "the Model Tree."\ "

" \ "

The view can be restored by selecting "\ "Change View from its context "\ "menu in the Model Tree."\ "

" win.saveNamedViewAction.setWhatsThis( _text ) # Front View _text = \ "Front View"\ "

"\ "
"\ "Orients the view to the Front View."\ "

" win.viewFrontAction.setWhatsThis( _text ) # Back View _text = \ "Back View"\ "

"\ "
"\ "Orients the view to the Back View."\ "

" win.viewBackAction.setWhatsThis( _text ) # Top View _text = \ "Top View"\ "

"\ "
"\ "Orients the view to the Top View."\ "

" win.viewTopAction.setWhatsThis( _text ) # Bottom View _text = \ "Bottom View"\ "

"\ "
"\ "Orients the view to the Bottom View."\ "

" win.viewBottomAction.setWhatsThis( _text ) # Left View _text = \ "Left View"\ "

"\ "
"\ "Orients the view to the Left View."\ "

" win.viewLeftAction.setWhatsThis( _text ) # Right View _text = \ "Right View"\ "

"\ "
"\ "Orients the view to the Right View."\ "

" win.viewRightAction.setWhatsThis( _text ) #Isometric View _text = \ "IsometricView"\ "

"\ "
"\ "Orients the view to the Isometric View."\ "

" win.viewIsometricAction.setWhatsThis( _text ) # Flip View Vertically _text = \ "Flip View Vertically"\ "

"\ "
"\ "Flip the view vertically."\ "

" win.viewFlipViewVertAction.setWhatsThis( _text ) # Flip View Horizontally _text = \ "Flip View Horizontally"\ "

"\ "
"\ "Flip the view horizontally."\ "

" win.viewFlipViewHorzAction.setWhatsThis( _text ) # Rotate View +90 _text = \ """Rotate View +90


Increment the current view by 90 degrees around the vertical axis.

""" win.viewRotatePlus90Action.setWhatsThis( _text ) # Rotate View -90 _text = \ """Rotate View -90


Decrement the current view by 90 degrees around the vertical axis.

""" win.viewRotateMinus90Action.setWhatsThis( _text ) # Standard Views Menu (on View toolbar) _text = \ """Standard Views


Menu of standard views.

""" win.standardViewsAction.setWhatsThis( _text) # View Manager (was Orientation Window) _text = \ """Orientation View Manager (Space)


Opens the Orientation view manager window which provides a convenient way to quickly access standard and custom views. It is also used to manage Named Views.

""" win.viewOrientationAction.setWhatsThis( _text ) # Set Current View to Home View _text = \ """Replace Home View with current view

Replaces the Home View with the current view.


Hot Tip: Press the Home key to switch to the Home View at any time.

""" win.setViewHomeToCurrentAction.setWhatsThis( _text ) # Semi-Full Screen view viewSemiFullScreenActionText = \ "Semi-Full Screen"\ "

"\ "Sets display to semi-full screen. "\ "

" win.viewSemiFullScreenAction.setWhatsThis( viewSemiFullScreenActionText ) # Display Rulers viewRulersActionText = \ "Display Rulers"\ "

"\ "Turns on/off the rulers."\ "

" win.viewRulersAction.setWhatsThis( viewRulersActionText ) # Display Reports viewReportsActionText = \ "Display Reports"\ "

"\ "Toggles the display of the report window"\ "

" win.viewReportsAction.setWhatsThis( viewReportsActionText ) # Full Screen view viewFullScreenActionText = \ "Full Screen"\ "

"\ "Sets display to Full Screen "\ "

" win.viewFullScreenAction.setWhatsThis( viewFullScreenActionText ) # QuteMolX viewQuteMolActionText = \ "QuteMolX"\ "

"\ "
"\ "Opens the QuteMolX Properties Manager where the user can "\ "alter rendering styles and launch QutemolX."\ "

" \ "QuteMolX must be installed and enabled as a "\ "plug-in from Preferences > Plug-ins for "\ "this feature to work." \ "

" win.viewQuteMolAction.setWhatsThis( viewQuteMolActionText ) # POV-Ray (was Raytrace Scene) viewRaytraceSceneActionText = \ "POV-Ray"\ "

"\ "
"\ "Raytrace the current scene using POV-Ray. "\ "

" \ "POV-Ray must be installed and enabled as "\ "a plug-in from Preferences > Plug-ins "\ "for this feature to work." \ "

" win.viewRaytraceSceneAction.setWhatsThis( viewRaytraceSceneActionText ) # Stereo View viewStereoViewActionText = \ "Stereo View"\ "

"\ "
"\ "Displays the Stereo View Property Manager "\ "

" win.setStereoViewAction.setWhatsThis(viewStereoViewActionText) # # Insert toolbar # # Graphene _text = \ """Build Graphene


Inserts a 2D sheet of graphene (centered at 0, 0, 0) based on the current parameters in the property manager.


Remember: Since this command is not interactive like most other modeling commands, the user must press the Preview button to insert the graphene structure into the model. The Preview button is located at the top of the property manager and looks like this:

""" win.insertGrapheneAction.setWhatsThis( _text ) # Build Nanotube _text = \ "Build Nanotube"\ "

"\ "
"\ "Enters the carbon nanotube modeling sub-system. Nanotube modeling "\ "sub-commands are presented in the flyout area of the "\ "command toolbar."\ "

" win.buildNanotubeAction.setWhatsThis( _text ) # Build DNA _text = \ "Build DNA"\ "

"\ "
"\ "Enters the DNA modeling sub-system. DNA modeling sub-commands are "\ "presented in the flyout area of the "\ "command toolbar."\ "

" win.buildDnaAction.setWhatsThis( _text ) # Build Protein _text = \ "Build Protein"\ "

"\ "
"\ "Enters the protein/peptide modeling sub-system. Protein/peptide "\ "modeling sub-commands are presented in the flyout area of the "\ "command toolbar."\ "

" win.buildProteinAction.setWhatsThis( _text ) # POV-Ray Scene insertPovraySceneActionText = \ "POV-Ray Scene"\ "

"\ "
"\ "Inserts a POV-Ray Scene file based on the "\ "current model and viewpoint. "\ "

" win.insertPovraySceneAction.setWhatsThis(insertPovraySceneActionText ) # Part Library _text = \ "Part Library"\ "

"\ "
"\ "Prompts the user to select an .mmp file from the NanoEngineer-1 "\ "Part Library to be inserted into the current part. "\ "

" win.partLibAction.setWhatsThis( _text ) # Comment _text = \ """Comment


Inserts a comment in the current part.

""" win.insertCommentAction.setWhatsThis( _text ) # Plane _text = \ """Plane


Inserts a plane into the graphics area.

""" win.referencePlaneAction.setWhatsThis( _text ) # # Display toolbar # # Display Default dispDefaultActionText = \ "Display Default"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "atoms, chunks, DNA, etc.) to Default. Objects with their "\ "display setting set to Default are rendered in the "\ "Global Display Style. "\ "

"\ "

The current Global Display Style is displayed in the "\ "status bar in the lower right corner of the main window and can "\ "be changed from there."\ "

" win.dispDefaultAction.setWhatsThis(dispDefaultActionText ) # Display Invisible dispInvisActionText = \ "Display Invisible"\ "

"\ "
"\ "Changes the display setting of selected atoms "\ "or chunks to Invisible, making them invisible."\ "

"\ "

If no atoms or chunks are selected, then this "\ "action will change the Current Display Mode "\ "of the 3D workspace to Invisible. All chunks "\ "with their display setting set to Default will"\ " inherit this display property."\ "

" win.dispInvisAction.setWhatsThis(dispInvisActionText ) # Display Lines dispLinesActionText = \ "Display Lines"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "atoms, chunks, DNA, etc.) to Lines display style. "\ "Only bonds are rendered as colored lines. "\ "

"\ "

The thickness of bond lines can be changed from the Bonds "\ "page of the Preferences dialog."\ "

" win.dispLinesAction.setWhatsThis(dispLinesActionText ) # Display Tubes dispTubesActionText = \ "Display Tubes"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "atoms, chunks, DNA, etc.) to Tubes display style. "\ "Atoms and bonds are rendered as colored tubes."\ "

" win.dispTubesAction.setWhatsThis(dispTubesActionText ) # Display Ball and Stick dispBallActionText = \ "Display Ball and Stick"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "atoms, chunks, DNA, etc.) to Ball and Stick display style. "\ "Atoms are rendered as spheres and bonds are rendered as narrow "\ "cylinders."\ "

"\ "

The scale of the spheres and cylinders can be "\ "changed from the Atoms and Bonds pages "\ "of the Preferences dialog."\ "

" win.dispBallAction.setWhatsThis(dispBallActionText ) # Display CPK # [bruce extended and slightly corrected text, 060307] _text = \ "Display CPK"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "atoms, chunks, DNA, etc.) to CPK display style. Atoms are "\ "rendered as spheres with a size equal to 0.775 of their VdW radius, "\ "corresponding to a contact force of approximately 0.1 nN with "\ "neighboring nonbonded atoms. Bonds are not rendered."\ "

"\ "

The scale of the spheres can be changed from the "\ "Atoms page of the Preferences dialog."\ "

" win.dispCPKAction.setWhatsThis( _text ) # DNA Cylinder _text = \ "Display DNA Cylinder"\ "

"\ "
"\ "Changes the display setting of the selection (i.e. selected "\ "DNA, etc.) to DNA Cylinder display style. DNA are rendered "\ "based on the settings found in the DNA Cylinder Display Style "\ "Options in the DNA page of the Preferences dialog."\ "

"\ "

Atoms and bonds are not rendered. This is considered a bug that "\ "will be fixed soon."\ "

" win.dispDnaCylinderAction.setWhatsThis( _text ) # Hide (Selection) _text = \ "Hide "\ "

"\ "
"\ "Hides the current selection. Works on atoms, chunks and/or any "\ "other object that can be hidden."\ "

" win.dispHideAction.setWhatsThis( _text ) # Unhide (Selection) unhideActionText = \ "Unhide "\ "

"\ "
"\ "Unhides the current selection. Works on atoms, chunks and/or any "\ "other object that can be hidden.

"\ "

"\ "If a selected chunk is both hidden and contains invisible "\ "atoms, then the first unhide operation will unhide the chunk and "\ "the second unhide operation will unhide the invisible atoms inside "\ "the chunk."\ "

" win.dispUnhideAction.setWhatsThis(unhideActionText) # Display Cylinder dispCylinderActionText = \ "Display Cylinder"\ "

"\ "
"\ "Changes the display setting of selected "\ "chunks to Cylinder mode. Chunks are "\ "rendered as cylinders. "\ "

"\ "

If no chunks are selected, then this action "\ "will change the Current Display Mode of "\ "the 3D workspace to Cylinder. All chunks "\ "with their display setting set to Default "\ "will inherit this display property."\ "

" win.dispCylinderAction.setWhatsThis(dispCylinderActionText ) # Display Surface dispSurfaceActionText = \ "Display Surface"\ "

"\ "
"\ "Changes the display setting of selected "\ "chunks to Surface mode. Chunks are "\ "rendered as a smooth surface."\ "

"\ "

If no chunks are selected, then this action "\ "will change the Current Display Mode of "\ "the 3D workspace to Surface. All chunks "\ "with their display setting set to Default"\ " will inherit this display property."\ "

" win.dispSurfaceAction.setWhatsThis(dispSurfaceActionText ) # Reset Chunk Color dispResetChunkColorText = \ "Reset Chunk Color"\ "

"\ "
"\ "Resets (removes) the user defined color of all selected chunks. "\ "All atoms and bonds in the chunk are rendered in their normal "\ "element colors."\ "

" win.resetChunkColorAction.setWhatsThis(dispResetChunkColorText ) # Reset Atoms Display dispResetAtomsDisplayText = \ "Reset Atoms Display"\ "Renders the selected atoms (or the atoms in the"\ "selected chunks) with the same display style as "\ "that of their parent chunk" win.dispResetAtomsDisplayAction.setWhatsThis(dispResetAtomsDisplayText) # Show Invisible Atoms dispShowInvisAtomsText = \ "Show Invisible Atoms"\ "Renders the selected atoms (or the atoms in the "\ "selected chunks) with the same display style as "\ " their parent chunk. However, if the parent chunk "\ "is set as invisible, this feature will not work." win.dispShowInvisAtomsAction.setWhatsThis(dispShowInvisAtomsText) #Element Color Settings Dialog dispElementColorSettingsText = \ "Element Color Settings Dialog"\ "Element colors can be manually changed " \ "using this dialog. Also, the user can load"\ "or save the element colors" win.dispElementColorSettingsAction.setWhatsThis\ (dispElementColorSettingsText) # # Select toolbar # # Select All selectAllActionText = \ "Select All (Ctrl + A)"\ "

"\ "
"\ "When in Build mode, this will select all the "\ "atoms in the model. Otherwise, this will select all "\ "the chunks in the model."\ "

" win.selectAllAction.setWhatsThis(selectAllActionText ) # Select None selectNoneActionText = \ "Select None

"\ "

"\ "
"\ "Unselects everything currently selected. "\ "

" win.selectNoneAction.setWhatsThis(selectNoneActionText ) # InvertSelection selectInvertActionText = \ "Invert Selection (Ctrl + Shift + I)"\ "

"\ "
"\ "Inverts the current selection."\ "

" win.selectInvertAction.setWhatsThis(selectInvertActionText ) # Select Connected selectConnectedActionText = \ "Select Connected (Ctrl + Shift + C)"\ "

"\ "
"\ "Selects all the atoms that can be reached by "\ "the currently selected atom via an unbroken "\ "chain of bonds.

"\ "

"\ "

You can also select all connected atoms by "\ "double clicking on an atom or bond while in "\ "Build mode.

" win.selectConnectedAction.setWhatsThis(selectConnectedActionText ) # Select Doubly selectDoublyActionText = \ "Select Doubly"\ "

"\ "
"\ "Selects all the atoms that can be reached from a "\ "currently selected atom through two disjoint "\ "unbroken chains of bonds. Atoms singly connected "\ "to this group and unconnected to anything else "\ "are also included in the selection."\ "

" win.selectDoublyAction.setWhatsThis(selectDoublyActionText ) # Expand Selection selectExpandActionText = \ "Expand Selection (Ctrl + D)"\ "

"\ "
"\ "Selects any atom that is a neighbor of a "\ "currently selected atom."\ "

" win.selectExpandAction.setWhatsThis(selectExpandActionText ) # Contract Selection selectContractActionText = \ "Contract Selection "\ "(Ctrl + Shift + D)"\ "

"\ "
"\ "Deselects any atom that is a neighbor of a "\ "non-picked atom or has a bondpoint."\ "

" win.selectContractAction.setWhatsThis(selectContractActionText ) # Selection Lock _text = \ """Selection Lock (Ctrl + L)

(off) (on)
Toggles the mouse Selection Lock on and off.


Remember: When enabled, selection operations using the mouse (i.e. clicks and region selections) are disabled in the graphics area. All other selection commands available via toolbars, menus, the model tree and keyboard shortcuts are not affected when the Selection Lock is turned on.

""" win.selectLockAction.setWhatsThis( _text ) # # Modify Toolbar # # Adjust Selection modifyAdjustSelActionText = \ "Adjust Selection"\ "

"\ "
"\ "Adjusts the atom and bond positions (of the "\ "selection) to make the geometry more "\ "realistic. The operations used to move the "\ "atoms and bonds approximate molecular mechanics"\ " methods."\ "

" win.modifyAdjustSelAction.setWhatsThis(modifyAdjustSelActionText ) # Adjust All modifyAdjustAllActionText = \ "Adjust All"\ "

"\ "
"\ "Adjusts the atom and bond positions (of the"\ " entire part) to make the geometry of the "\ " part more realistic. The operations used to "\ "move the atoms and bonds approximate molecular "\ "mechanics methods."\ "

" win.modifyAdjustAllAction.setWhatsThis(modifyAdjustAllActionText ) # Hydrogenate modifyHydrogenateActionText = \ "Hydrogenate"\ "

"\ "
"\ "Adds hydrogen atoms to all the bondpoints in "\ "the selection.

" win.modifyHydrogenateAction.setWhatsThis(modifyHydrogenateActionText ) # Dehydrogenate modifyDehydrogenateActionText = \ "Dehydrogenate"\ "

"\ "
"\ "Removes all hydrogen atoms from the "\ "selection.

" win.modifyDehydrogenateAction.setWhatsThis(modifyDehydrogenateActionText ) # Passivate modifyPassivateActionText = \ "Passivate"\ "

"\ "
"\ "Changes the types of incompletely bonded atoms "\ "to atoms with the right number of bonds, using"\ " atoms with the best atomic radius."\ "

" win.modifyPassivateAction.setWhatsThis(modifyPassivateActionText ) # Stretch modifyStretchActionText = \ "Stretch"\ "

"\ "
"\ "Stretches the bonds of the selected chunk(s).

" win.modifyStretchAction.setWhatsThis(modifyStretchActionText ) # Delete Bonds modifyDeleteBondsActionText = \ "Cut Bonds"\ "

"\ "
"\ "Delete all bonds between selected and unselected atoms or chunks.

" win.modifyDeleteBondsAction.setWhatsThis(modifyDeleteBondsActionText ) # Separate/New Chunk modifySeparateActionText = \ "Separate"\ "

"\ "
"\ "Creates a new chunk(s) from the currently "\ "selected atoms. If the selected atoms belong to different "\ "chunks, multiple new chunks are created.

" win.modifySeparateAction.setWhatsThis(modifySeparateActionText ) # New Chunk makeChunkFromSelectedAtomsActionText = \ "New Chunk"\ "

"\ "
"\ "Creates a new chunk from the currently selected atoms. "\ "All atoms end up in a single chunk.

" win.makeChunkFromSelectedAtomsAction.setWhatsThis\ (makeChunkFromSelectedAtomsActionText ) # Combine Chunks modifyMergeActionText = \ "Combine Chunks"\ "

"\ "
"\ "Combines two or more chunks into a single chunk.

" win.modifyMergeAction.setWhatsThis(modifyMergeActionText ) # Invert Chunks modifyInvertActionText = \ "Invert"\ "

"\ "
"\ "Inverts the atoms of the selected chunks.

" win.modifyInvertAction.setWhatsThis(modifyInvertActionText ) # Mirror Selected Chunks #Note that the the feature name is intentionally kept "Mirror" instead of #"Mirror Chunks" because # in future we will support mirrroing atoms as well. -- ninad060814 modifyMirrorActionText = \ "Mirror"\ "

"\ "
"\ "Mirrors the selected chunks about a "\ "reference Grid or Plane.
" win.modifyMirrorAction.setWhatsThis(modifyMirrorActionText ) win.toolsMoveMoleculeAction.setWhatsThis( """Translate


Translate the selection interactively. Special translation options are provided in the property manager.

""") win.rotateComponentsAction.setWhatsThis( """Rotate


Rotate the selection interactively. Special rotation options are provided in the property manager.

""") # Align to Common Axis modifyAlignCommonAxisActionText = \ "Align To Common Axis"\ "

"\ "
"\ "Aligns one or more chunks to the axis of the first selected chunk. "\ "You must select two or more chunks before using this feature."\ "

" win.modifyAlignCommonAxisAction.setWhatsThis\ ( modifyAlignCommonAxisActionText ) #Center on Common Axis modifyCenterCommonAxisActionText = \ "Center On Common Axis"\ "

"\ " Moves all selected chunks to "\ "the center of the first "\ "selected chunk and also aligns "\ "them to the axis of the first one . You "\ "must select two or more chunks before "\ "using this feature.

" win.modifyCenterCommonAxisAction.setWhatsThis\ (modifyCenterCommonAxisActionText) # # Tools Toolbar # # Select Chunks toolsSelectMoleculesActionText = \ "Select Chunks"\ "

"\ "
"\ "Select Chunks allows you to select/unselect chunks with the "\ "mouse.

"\ "

"\ "Mouse/Key Combinations

"\ "

Left Click/Drag - selects a chunk(s).

"\ "

"\ "Ctrl+Left Click/Drag - removes chunk(s) from selection.

"\ "

"\ "Shift+Left Click/Drag - adds chunk(s) to selection."\ "

" win.toolsSelectMoleculesAction.setWhatsThis\ ( toolsSelectMoleculesActionText ) # Build Atoms toolsDepositAtomActionText = \ "Build Atoms"\ "

"\ "
"\ "Enters the atom modeling sub-system for building/editing molecular "\ "structures. Atom (and bond) modeling sub-commands are presented in the "\ "flyout area of the command toolbar."\ "

" win.toolsDepositAtomAction.setWhatsThis( toolsDepositAtomActionText ) # Build Crystal toolsCookieCutActionText = \ "Build Crystal"\ "

"\ "
"\ "Enters the Crystal modeling sub-system which provides an interactive "\ "modeling environment for cutting out multi-layered shapes from slabs "\ "of diamond or lonsdaleite 3D lattice. Crystal modeling sub-commands "\ "are presented in the flyout area of the "\ "command toolbar."\ "

" win.buildCrystalAction.setWhatsThis( toolsCookieCutActionText ) # Extrude _text = \ """Extrude


Creates rod or ring structures from one or more (selected) molecular fragments as a repeating unit. Extrude can also be used to create linear (rod) or circular (ring) patterns from the current selection.


Remember: Something must be selected (i.e. the repeating unit) before entering this command.

""" win.toolsExtrudeAction.setWhatsThis( _text ) # Fuse Chunks _text = \ """Fuse Chunks Mode


Fuses two or more chunks. Two fusing options are supported:

Make Bonds:
creates bonds between bondpoints of the selected chunk and any other chunks within bonding distance. Bondpoints are highlighted and lines are drawn (and undrawn) as chunks are moved interactively to indicate bonding relationships between bondpoints. Bondpoints with too many bonding relationships are highlighted in magenta and will not make bonds.

Fuse Atoms:
fuses pairs of overlapping atoms between chunks. The overlapping atoms in the selected chunk(s) are highlighted in green while the atoms that will be deleted in non-selected chunks are highlighted in dark red.


Hot Tip: This command can be very slow for large models with lots of atoms. To improve preformance, use Hide to hide everything you don't need before entering this command. After you are done, select all nodes in the model tree (or click Select All) and click Unhide.

""" win.toolsFuseChunksAction.setWhatsThis( _text ) # # Simulator Toolbar # # Minimize Energy simMinimizeEnergyActionText = \ "Minimize Energy"\ "

"\ "
"\ "The potential energy of a chemical structure "\ "is a function of the relative positions of "\ "its atoms. To obtain this energy with "\ "complete accuracy involves a lot of computer "\ "time spent on quantum mechanical "\ "calculations, which cannot be practically "\ "done on a desktop computer. To get an "\ "approximate potential energy without all "\ "that, we represent the energy as a series "\ "of terms involving geometric properties of "\ "the structure: lengths of chemical bonds, "\ "angles between pairs and triples of chemical "\ "bonds, etc.

" \ "

" \ "As is generally the case with physical "\ "systems, the gradient of the potential "\ "energy represents the forces acting on "\ "various particles. The atoms want to move in "\ "the direction that most reduces the "\ "potential energy. Energy minimization is a "\ "process of adjusting the atom positions to "\ "try to find a global minimum of the "\ "potential energy. Each atom "\ "contributes three variables (its x, y, and z"\ " coordinates) so the search space is "\ "multi-dimensional. The global minimum is the "\ "configuration that the atoms will settle "\ "into if lowered to zero Kelvin.

" win.simMinimizeEnergyAction.setWhatsThis( simMinimizeEnergyActionText ) checkAtomTypesActionText = \ "Check AMBER AtomTypes"\ "

"\ "Shows which AtomTypes will be assigned to each atom when the AMBER force field is in use."\ "

" win.checkAtomTypesAction.setWhatsThis( checkAtomTypesActionText ) # Change Chunk Color dispObjectColorActionText = \ "Edit Color"\ "

"\ "
"\ "Allows the user to change the color of all selected chunks and/or "\ "jigs (i.e. rotary and linear motors)."\ "

" win.dispObjectColorAction.setWhatsThis( dispObjectColorActionText ) # Run Dynamics (was NanoDynamics-1). Mark 060807. _text = \ """Run Dynamics


Opens the dialog for running NanoDynamics-1, the native molecular dynamics simulator for NanoEngineer-1. NanoDynamics-1 creates a trajectory (movie) file by calculating the inter-atomic potentials and bonding of the entire model.

""" win. simSetupAction.setWhatsThis( _text ) # Simulation Jigs simulationJigsActionText = \ "Simulation Jigs"\ "

"\ "
"\ "Drop down menu for adding rotary motors, linear motors and "\ "other jigs used to simulate structures"\ "

" win.simulationJigsAction.setWhatsThis( simulationJigsActionText ) # Play Movie (was Movie Player) Mark 060807. _text = \ """Play Movie


Plays the most recent trajectory (movie) file created by the NanoEngineer-1 molecular dynamics simulator. To create a movie file, select Run Dynamics.


Remember: You must first have created a movie file to play it.

""" win. simMoviePlayerAction.setWhatsThis( _text ) # Make Graphs (was Plot Tool) Mark 060807. _text = \ """Plot Graphs


Plot a graph from a NanoDynamics-1 simulation trace file using GNUplot.

The following list of jigs write data to the trace file:

Rotary Motors: speed (GHz) and torque (nn-nm)
Linear Motors: displacement (pm)
Anchors: torque (nn-nm)
Thermostats: energy added (zJ)
Thermometer: temperature (K)
Measure Distance: distance (angstroms)
Measure Angle: angle (degrees)
Measure Dihedral: dihedral (degrees)


Remember: A NanoDynamics-1 simulation must have been run to create and plot a trace file and the part must have at least one of the jigs listed above which writes data to the trace file.

""" win. simPlotToolAction.setWhatsThis( _text ) # # Jigs # # Anchor _text = \ """Anchor


Attaches an Anchor to the selected atoms. Anchors, AKA grounds in other molecular dynamics programs, constrains an atom's motion during minimization or simulation runs.


Remember: You must be in the Build Atoms command to create anchors since this is the only command that allows the user to select individual atoms. Simply select the atom(s) you want to anchor and then select this command. Anchors are drawn as a black wireframe box around each selected atom.

""" win.jigsAnchorAction.setWhatsThis( _text ) # Rotary Motor _text = \ """Rotary Motor


Attaches a Rotary Motor to the selected atoms. The Rotary Motor is used by the simulator to apply rotary motion to a set of atoms during a simulation run. You may specify the torque (in nN*nm) and speed (in Ghz) of the motor.


Remember: You must be in the Build Atoms command to create motors since this is the only command that allows the user to select individual atoms. Simply select the atoms you want to attach a motor to and then select this command.

""" win.jigsMotorAction.setWhatsThis( _text ) # Linear Motor _text = \ """Linear Motor


Attaches a Linear Motor to the selected atoms. The Linear Motor is used by the simulator to apply linear motion to a set of atoms during a simulation run. You may specify the force (in nN*nm) and stiffness (in N/m) of the motor.


Remember: You must be in the Build Atoms command to create motors since this is the only command that allows the user to select individual atoms. Simply select the atoms you want to attach a motor to and then select this command.

""" win.jigsLinearMotorAction.setWhatsThis( _text ) # Thermostat _text = \ """Thermostat


Attaches a Langevin Thermostat to a single selected atom, thereby associating the thermostat to the entire molecule of which the selected atom is a member. The user specifies the temperature (in Kelvin).

The Langevin Thermostat is used to set and hold the temperature of a molecule during a simulation run.


Remember: You must be in the Build Atoms command to create a Langevin Thermostat since this is the only command that allows the user to select individual atoms. Simply select a single atom you want to attach the thermostat to and then select this command. The thermostat is drawn as a blue wireframe box around the selected atom.

""" win.jigsStatAction.setWhatsThis( _text ) # Thermometer _text = \ """Thermometer


"\ Attaches a Thermometer to a single selected atom, thereby associating the themometer to the entire molecule of which the selected atom is a member.

The temperature of the molecule will be recorded and written to a trace file during a simulation run.


Remember: You must be in the Build Atoms command to create a Thermometer since this is the only command that allows the user to select individual atoms. Simply select a single atom you want to attach the thermometer to and then select this command. The thermometer is drawn as a dark red wireframe box around the selected atom.

""" win.jigsThermoAction.setWhatsThis( _text ) # ESP Image jigsESPImageActionText = \ "ESP Image"\ "

"\ "
"\ "An ESP Image allows the user to visualize "\ "the electrostatic potential of points on the face "\ "of a square 2D surface. Nano-Hive's MPQC ESP "\ "Plane plug-in is used to calculate the "\ "electrostatic potential."\ "

"\ "

To create an ESP Image, enter Build "\ "mode, select three or more atoms and then select "\ "this jig. The ESP Image is drawn as a plane with "\ "a bounding volume."\ "

" win.jigsESPImageAction.setWhatsThis(jigsESPImageActionText ) # Atom Set jigsAtomSetActionText = \ "Atom Set"\ "

"\ "
"\ "An Atom Set jig provides a convienient way "\ "to save an atom selection which can be reselected "\ "later."\ "

"\ "

To create an Atom Set, enter Build mode, "\ "select any number of atoms and then select this "\ "jig. The Atom Set is drawn as a set of wireframe "\ "boxes around each atom in the selection."\ "

"\ "

To reselect the atoms in an Atom Set, select "\ "it's context menu in the Model Tree and click the "\ "menu item that states "\ "Select this jig's atoms."\ "

" win.jigsAtomSetAction.setWhatsThis(jigsAtomSetActionText ) # Measure Distance jigsDistanceActionText = \ "Measure Distance Jig"\ "

"\ ""\ "
"\ "A Measure Distance Jig functions as a "\ "dimension to display the distance between two "\ "atoms."\ "

"\ "

To create the Measure Distance Jig, enter "\ "Build mode, select two atoms and then "\ "select this jig. The Measure Distance Jig is "\ "drawn as a pair of wireframe boxes around each "\ "atom connected by a line and a pair of numbers. "\ "The first number is the distance between the "\ "VdW radii (this can be a negative number for "\ "atoms that are close together). The second number "\ "is the distance between the nuclei."\ "

"\ "

The Measure Distance Jig will write the two "\ "distance values to the trace file for each frame "\ "of a simulation run and can be plotted using the "\ "Plot Tool."\ "

" win.jigsDistanceAction.setWhatsThis(jigsDistanceActionText ) # Measure Angle jigsAngleActionText = \ "Measure Angle Jig"\ "

"\ "
"\ "A Measure Angle Jig functions as a dimension "\ "to display the angle between three atoms."\ "

"\ "

To create the Measure Angle Jig, enter "\ "Build mode, select three atoms and then "\ "select this jig. The Measure Angle Jig is "\ "drawn as a set of wireframe boxes around each atom "\ "and a number which is the angle between the three "\ "atoms."\ "

"\ "

The Measure Angle Jig will write the angle value "\ "to the trace file "\ "for each frame of a simulation run and can be "\ "plotted using the Plot Tool."\ "

" win.jigsAngleAction.setWhatsThis(jigsAngleActionText ) # Measure Dihedral jigsDihedralActionText = \ "Measure Dihedral Jig"\ "

"\ ""\ "
"\ "A Measure Dihedral Jig functions as a "\ "dimension to display the dihedral angle of a four"\ " atom sequence."\ "

"\ "

To create the Measure Dihedral Jig, enter "\ "Build mode, select four atoms and then "\ "select this jig. The Measure Dihedral Jig is "\ "drawn as a set of wireframe boxes around each "\ "atom and a number which is the dihedral angle "\ "value."\ "

"\ "

The Measure Dihedral Jig will write the "\ "dihedral angle value to the trace file "\ "for each frame of a simulation run and can be "\ "plotted using the Plot Tool."\ "

" win.jigsDihedralAction.setWhatsThis(jigsDihedralActionText ) # GAMESS Jig jigsGamessActionText = \ "GAMESS Jig"\ "

"\ "
"\ "A GAMESS Jig is used to tag a set of atoms "\ "for running a GAMESS calculation. Energy "\ "and Geometry Optimization calculations are "\ "supported."\ "

"\ "

To create the GAMESS Jig, enter Build mode, "\ "select the atoms to tag and then select this jig. "\ "The GAMESS Jig is drawn as a set of magenta "\ "wireframe boxes around each atom."\ "

" win.jigsGamessAction.setWhatsThis(jigsGamessActionText ) # Grid Plane Jig jigsGridPlaneActionText = \ "Grid Plane"\ "

"\ "
"\ "A Grid Plane jig is a rectanglar plane "\ "that can display a square or SiC grid within its "\ "boundary. It is often used as an aid in "\ "constructing large lattice structures made of "\ "silicon carbide (SiC). It is also used as a "\ "visual aid in estimating distances between atoms "\ "and/or other structures."\ "

"\ "

To create the Grid Plane jig, enter"\ "Build mode, select three or more atoms "\ "and then select this jig. "\ "

"\ "

The Grid Plane jig is drawn as a rectanglar "\ "plane with a grid."\ "

" win.jigsGridPlaneAction.setWhatsThis(jigsGridPlaneActionText ) # # Help Toolbar # # What's This _text = \ "Enter \"What's This\" mode"\ "

"\ "
"\ "This invokes \"What's This?\" help mode which is part of NanoEngineer-1's "\ "online help system, and provides users with information about the "\ "functionality and usage of a particular command button or widget.

" win.helpWhatsThisAction.setWhatsThis( _text ) win.helpMouseControlsAction.setWhatsThis("Displays help for mouse controls") win.helpKeyboardShortcutsAction.setWhatsThis("Displays help for keyboard"\ "shortcuts") win.helpSelectionShortcutsAction.setWhatsThis("Displays help for selection"\ " controls") win.helpGraphicsCardAction.setWhatsThis("Displays information for the"\ " computer's graphics card") win.helpAboutAction.setWhatsThis("Displays information about this version"\ " of NanoEngineer-1") # # Status bar # # Global Display Style combobox _text = \ "Global Display Style"\ "

"\ "Use this widget to change the Global Display Style."\ "

"\ "Objects with their display setting set to Default are "\ "rendered in the Global Display Style."\ "

" win.statusBar().globalDisplayStylesComboBox.setWhatsThis( _text ) def create_whats_this_descriptions_for_NanoHive_dialog(w): "Create What's This descriptions for the Nano-Hive dialog widgets." # MPQC Electrostatics Potential Plane MPQCESPText = \ "MPQC Electrostatics Potential Plane"\ "Enables the MPQC Electrostatics Potential Plane "\ "plugin. "\ "

" w.MPQC_ESP_checkbox.setWhatsThis(MPQCESPText ) MPQCESPTipText = "Enables/disables MPQC Electrostatics "\ "Potential Plane Plugin" w.MPQC_ESP_checkbox.setToolTip(MPQCESPTipText) def whats_this_text_for_glpane(): """ Return a What's This description for a GLPane. """ #bruce 080912 moved this here from part of a method in class GLPane import sys if sys.platform == "darwin": # TODO: figure out how to get fix_whatsthis_text_and_links to handle # this for us (like it does for most whatsthis text). # The href link herein also doesn't work (at least on my Mac). # For more info see comments from today in other files. # [bruce 081209 comment] ctrl_or_cmd = "Cmd" else: ctrl_or_cmd = "Ctrl" glpaneText = \ "Graphics Area
"\ "
This is where the action is."\ "

Mouse Button Commands :
"\ "
"\ "Left Mouse Button (LMB) - Select
"\ "LMB + Shift - add to current selection
"\ "LMB + " + ctrl_or_cmd + " - remove from current selection
"\ "LMB + Shift + " + ctrl_or_cmd + " - delete highlighted object
"\ "
"\ "Middle Mouse Button (MMB) - Rotate view
"\ "MMB + Shift - Pan view
"\ "MMB + " + ctrl_or_cmd + " - Rotate view around the point of view (POV)
"\ "
"\ "Right Mouse Button (RMB) - Display context-sensitive menus
"\ "
"\ "Mouse Wheel - Zoom in/out (configurable from Preference settings)"\ "

" return glpaneText # end