1 2 /* 3 A* ------------------------------------------------------------------- 4 B* This file contains source code for the PyMOL computer program 5 C* copyright 1998-2000 by Warren Lyford Delano of DeLano Scientific. 6 D* ------------------------------------------------------------------- 7 E* It is unlawful to modify or remove this copyright notice. 8 F* ------------------------------------------------------------------- 9 G* Please see the accompanying LICENSE file for further information. 10 H* ------------------------------------------------------------------- 11 I* Additional authors of this source file include: 12 -* 13 -* 14 -* 15 Z* ------------------------------------------------------------------- 16 */ 17 #ifndef _H_ButMode 18 #define _H_ButMode 19 20 #include"Ortho.h" 21 #include"Word.h" 22 23 #define cButModeNothing -1 24 25 #define cButModeRotXYZ 0 26 #define cButModeTransXY 1 27 #define cButModeTransZ 2 28 #define cButModeClipNF 3 29 #define cButModeRotZ 4 30 #define cButModeClipN 5 31 #define cButModeClipF 6 32 #define cButModeLB 7 33 #define cButModeMB 8 34 #define cButModeRB 9 35 #define cButModeAddToLB 10 36 #define cButModeAddToMB 11 37 #define cButModeAddToRB 12 38 #define cButModePickAtom 13 39 #define cButModePickBond 14 40 #define cButModeRotFrag 15 41 #define cButModeTorFrag 16 42 #define cButModeMovFrag 17 43 #define cButModeOrigAt 18 44 #define cButModeRectAdd 19 45 #define cButModeRectSub 20 46 #define cButModeRect 21 47 #define cButModeNone 22 48 #define cButModeCent 23 49 #define cButModePkTorBnd 24 50 #define cButModeScaleSlab 25 51 #define cButModeMoveSlab 26 52 #define cButModePickAtom1 27 53 #define cButModeMoveAtom 28 54 #define cButModeMenu 29 55 56 #define cButModeSeleSet 30 57 #define cButModeSeleToggle 31 58 #define cButModeSeleAddBox 32 59 #define cButModeSeleSubBox 33 60 #define cButModeMoveSlabAndZoom 34 61 62 63 /* simple click action for JyMOL -- no selections involved */ 64 65 #define cButModeSimpleClick 35 66 67 68 /* new drag actions */ 69 70 #define cButModeRotDrag 36 71 #define cButModeMovDrag 37 72 #define cButModeMovDragZ 38 73 74 #define cButModeRotObj 39 75 #define cButModeMovObj 40 76 #define cButModeMovObjZ 41 77 #define cButModeMovFragZ 42 78 #define cButModeMoveAtomZ 43 79 #define cButModeDragMol 44 80 81 #define cButModeRotView 45 82 #define cButModeMovView 46 83 #define cButModeMovViewZ 47 84 85 #define cButModePotentialClick 48 86 #define cButModeDragObj 49 87 88 #define cButModeInvMoveSlabAndZoom 50 89 #define cButModeInvTransZ 51 90 91 #define cButModeSeleSetBox 52 92 93 #define cButModeInvRotZ 53 94 95 /* light editing */ 96 97 #define cButModeRotL 54 98 #define cButModeMovL 55 99 #define cButModeMvzL 56 100 101 #define cButModeCount 57 102 103 104 /* remainder only used in scene... */ 105 106 #define cButModeScaleSlabShrink 101 107 #define cButModeScaleSlabExpand 102 108 #define cButModeMoveSlabForward 103 109 #define cButModeMoveSlabBackward 104 110 #define cButModeMoveSlabAndZoomForward 105 111 #define cButModeMoveSlabAndZoomBackward 106 112 #define cButModeZoomForward 107 113 #define cButModeZoomBackward 108 114 115 116 /* conversion */ 117 118 #define cButModeLeftNone 0 119 #define cButModeMiddleNone 1 120 #define cButModeRightNone 2 121 122 #define cButModeLeftShft 3 123 #define cButModeMiddleShft 4 124 #define cButModeRightShft 5 125 126 #define cButModeLeftCtrl 6 127 #define cButModeMiddleCtrl 7 128 #define cButModeRightCtrl 8 129 130 #define cButModeLeftCtSh 9 131 #define cButModeMiddleCtSh 10 132 #define cButModeRightCtSh 11 133 134 #define cButModeWheelNone 12 135 #define cButModeWheelShft 13 136 #define cButModeWheelCtrl 14 137 #define cButModeWheelCtSh 15 138 139 #define cButModeLeftDouble 16 140 #define cButModeMiddleDouble 17 141 #define cButModeRightDouble 18 142 #define cButModeLeftSingle 19 143 #define cButModeMiddleSingle 20 144 #define cButModeRightSingle 21 145 146 #define cButModeLeftShftDouble 22 147 #define cButModeMiddleShftDouble 23 148 #define cButModeRightShftDouble 24 149 #define cButModeLeftShftSingle 25 150 #define cButModeMiddleShftSingle 26 151 #define cButModeRightShftSingle 27 152 153 #define cButModeLeftCtrlDouble 28 154 #define cButModeMiddleCtrlDouble 29 155 #define cButModeRightCtrlDouble 30 156 #define cButModeLeftCtrlSingle 31 157 #define cButModeMiddleCtrlSingle 32 158 #define cButModeRightCtrlSingle 33 159 160 #define cButModeLeftCtShDouble 34 161 #define cButModeMiddleCtShDouble 35 162 #define cButModeRightCtShDouble 36 163 #define cButModeLeftCtShSingle 37 164 #define cButModeMiddleCtShSingle 38 165 #define cButModeRightCtShSingle 39 166 167 #define cButModeLeftAltDouble 40 168 #define cButModeMiddleAltDouble 41 169 #define cButModeRightAltDouble 42 170 #define cButModeLeftAltSingle 43 171 #define cButModeMiddleAltSingle 44 172 #define cButModeRightAltSingle 45 173 174 #define cButModeLeftAltShftDouble 46 175 #define cButModeMiddleAltShftDouble 47 176 #define cButModeRightAltShftDouble 48 177 #define cButModeLeftAltShftSingle 49 178 #define cButModeMiddleAltShftSingle 50 179 #define cButModeRightAltShftSingle 51 180 181 #define cButModeLeftCtrlAltDouble 52 182 #define cButModeMiddleCtrlAltDouble 53 183 #define cButModeRightCtrlAltDouble 54 184 #define cButModeLeftCtrlAltSingle 55 185 #define cButModeMiddleCtrlAltSingle 56 186 #define cButModeRightCtrlAltSingle 57 187 188 #define cButModeLeftCtrlAltShftDouble 58 189 #define cButModeMiddleCtrlAltShftDouble 59 190 #define cButModeRightCtrlAltShftDouble 60 191 #define cButModeLeftCtrlAltShftSingle 61 192 #define cButModeMiddleCtrlAltShftSingle 62 193 #define cButModeRightCtrlAltShftSingle 63 194 195 #define cButModeWheelAlt 64 196 #define cButModeWheelAltShft 65 197 #define cButModeWheelCtrlAlt 66 198 #define cButModeWheelCtrlAltShft 67 199 200 #define cButModeLeftAlt 68 201 #define cButModeMiddleAlt 69 202 #define cButModeRightAlt 70 203 204 #define cButModeLeftAltShft 71 205 #define cButModeMiddleAltShft 72 206 #define cButModeRightAltShft 73 207 208 #define cButModeLeftCtrlAlt 74 209 #define cButModeMiddleCtrlAlt 75 210 #define cButModeRightCtrlAlt 76 211 212 #define cButModeLeftCtrlAltShft 77 213 #define cButModeMiddleCtrlAltShft 78 214 #define cButModeRightCtrlAltShft 79 215 216 #define cButModeInputCount 80 217 218 typedef char CodeType[10]; 219 220 int ButModeInit(PyMOLGlobals * G); 221 void ButModeFree(PyMOLGlobals * G); 222 Block *ButModeGetBlock(PyMOLGlobals * G); 223 void ButModeSetRate(PyMOLGlobals * G, float renderTime); 224 void ButModeResetRate(PyMOLGlobals * G); 225 int ButModeGet(PyMOLGlobals * G, int button); 226 void ButModeSet(PyMOLGlobals * G, int button, int action); 227 int ButModeTranslate(PyMOLGlobals * G, int button, int mod); 228 int ButModeCheckPossibleSingleClick(PyMOLGlobals * G, int button, int mod); 229 int ButModeGetHeight(PyMOLGlobals * G); 230 231 #endif 232