AcquireView.mxml 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:HBox
  3. xmlns:mx="http://www.adobe.com/2006/mxml"
  4. xmlns:qs="qs.controls.*"
  5. xmlns:panzoom="org.rockholla.controls.panzoom.*"
  6. xmlns:helpers="com.imt.intimamedia.helpers.*"
  7. horizontalAlign="center" verticalAlign="top"
  8. paddingLeft="50" paddingRight="10"
  9. verticalScrollPolicy="auto" horizontalScrollPolicy="auto"
  10. show="showView()"
  11. creationComplete="creationCompleteHandler()">
  12. <mx:Script>
  13. <![CDATA[
  14. import mx.effects.easing.Elastic;
  15. ]]>
  16. </mx:Script>
  17. <mx:Script source="../../../scripts/physician/acquire/acquireView.as" />
  18. <mx:Zoom id="zoomHelpAdd" startDelay="50"/>
  19. <mx:Parallel id="zoomHelpRemove">
  20. <mx:Zoom />
  21. <mx:Fade />
  22. </mx:Parallel>
  23. <mx:VBox width="180%" height="100%" verticalScrollPolicy="off" visible="{!_man}" includeInLayout="{!_man}" showEffect="Fade" hideEffect="Fade">
  24. <mx:VBox width="100%" height="130%" styleName="containerZoneWithTitle">
  25. <mx:Canvas width="100%">
  26. <mx:Image source="@Embed('images/general/leftTitle.png')" />
  27. <mx:Label text="{resourceManager.getString( 'labels', 'title.acquisition')}" styleName="titlePanel" />
  28. <mx:Label text="{_model.patientSelected.firstName} {_model.patientSelected.lastName}, {_model.getSelectedPatientGender()}, {_model.getSelectedPatientBirthDate()}, ({resourceManager.getString( 'labels', 'label.visit')} {_model.appointmentSelected.number})" left="300" paddingBottom="0" styleName="blackText" />
  29. <mx:Image id="acquireGlobalProcessHelp" visible="false" includeInLayout="false" />
  30. <mx:Image id="acquireAcquisitionHelp" visible="false" includeInLayout="false" />
  31. <mx:Image source="@Embed('images/general/question_mark.png')" click="HelpUtils.loadAcquireHelp(acquireAcquisitionHelp)" right="10" top="10" buttonMode="true" useHandCursor="true" />
  32. </mx:Canvas>
  33. <mx:HBox width="100%" verticalGap="1">
  34. <mx:VBox height="100%" paddingLeft="25">
  35. <mx:Image source="@Embed(source='images/acquire/lens.png')" visible="true"
  36. click="viewCamera()" toolTip="{resourceManager.getString( 'labels', 'banner.video')}" />
  37. <mx:Image source="@Embed('images/acquire/browse.png')" visible="true"
  38. click="viewBrowse()" toolTip="JPEG, DICOM, PNG" />
  39. </mx:VBox>
  40. <mx:ViewStack id="cameraViews" width="97%" creationPolicy="all">
  41. <mx:VBox id="cameraBox" horizontalAlign="center" width="100%" showEffect="Fade" hideEffect="Fade" rollOver="displayControls(controlsVideo)" rollOut="hideControls(controlsVideo)" >
  42. <mx:Image id="snapshotDragAndDrop" includeInLayout="false" visible="false" width="127" height="95" />
  43. <mx:Canvas>
  44. <mx:Box width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
  45. <mx:Image id="snapshotVideo" includeInLayout="false" visible="false" width="660" height="494" />
  46. <mx:VideoDisplay id="video" width="660" height="494" />
  47. </mx:Box>
  48. <mx:Image id="snapshotVideoHD" visible="false" includeInLayout="false" width="{_webcamMaxWidth}" height="{_webcamMaxHeight}" />
  49. <mx:VideoDisplay id="videoHD" visible="false" includeInLayout="false" width="{_webcamMaxWidth}" height="{_webcamMaxHeight}" />
  50. <mx:HBox id="controlsVideo" alpha="0" bottom="2" width="660" horizontalAlign="center" visible="{!_model.viewPatient}">
  51. <mx:Button id="playButton" icon="@Embed(source='images/acquire/play.png')" width="100%" label="{resourceManager.getString( 'labels', 'button.play')}" visible="false" includeInLayout="false" click="play()" />
  52. <mx:Button id="snapshotButton" icon="@Embed(source='images/acquire/record.png')" width="100%" label="{resourceManager.getString( 'labels', 'button.snapshot')}" click="snapshot()" />
  53. <mx:Button icon="@Embed(source='images/acquire/webcam.png')" label="{resourceManager.getString( 'labels', 'button.source')}" width="100%" click="changeCamera()" />
  54. <mx:Button icon="@Embed(source='images/acquire/settings.png')" label="{resourceManager.getString( 'labels', 'button.settings')}" width="100%" click="changeSecurity()" />
  55. </mx:HBox>
  56. </mx:Canvas>
  57. </mx:VBox>
  58. <mx:VBox horizontalAlign="center" width="100%" showEffect="Fade" hideEffect="Fade" rollOver="displayControls(controlsImage)" rollOut="hideControls(controlsImage)">
  59. <mx:Canvas horizontalCenter="0">
  60. <mx:Box id="snapshotImageBox" width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
  61. <mx:Image id="snapshotImage" width="660" height="494" />
  62. </mx:Box>
  63. <mx:Image id="snapshotImageHD" visible="false" includeInLayout="false"/>
  64. <!--mx:ProgressBar id="dicomProgressBar" visible="false" top="175" width="60%" mode="manual" /-->
  65. <mx:HBox id="controlsImage" alpha="1" bottom="2" width="660" horizontalAlign="center" visible="{!_model.viewPatient}">
  66. <!--mx:Button icon="@Embed(source='images/acquire/browse_16.png')" label="{resourceManager.getString( 'labels', 'banner.browse')}" width="100%" click="browse()" /-->
  67. </mx:HBox>
  68. </mx:Canvas>
  69. </mx:VBox>
  70. </mx:ViewStack>
  71. <!--mx:VBox width="3%" height="330" verticalAlign="bottom" horizontalAlign="right" paddingRight="30" visible="{!_man &amp;&amp; !_model.viewPatient}" includeInLayout="{!_man &amp;&amp; !_model.viewPatient}">
  72. <mx:Button icon="@Embed(source='images/acquire/save.png')" width="115" label="{resourceManager.getString( 'labels', 'button.save')}" height="25" click="saveImages()" />
  73. </mx:VBox-->
  74. </mx:HBox>
  75. <mx:HBox horizontalAlign="center" width="100%" verticalGap="2" paddingTop="3" paddingBottom="1" verticalAlign="middle" horizontalGap="5" cornerRadius="10" visible="{!_man}" includeInLayout="{!_man}" showEffect="Fade">
  76. <mx:VBox horizontalAlign="center" verticalGap="2" width="100%" visible="{!_body}" includeInLayout="{!_body}">
  77. <mx:HBox width="98%" height="16">
  78. <mx:Label text="{resourceManager.getString( 'labels', 'label.right')}" styleName="titleGrey" />
  79. <mx:Spacer width="100%" />
  80. <mx:Label id="typeRight" styleName="titleGrey" />
  81. </mx:HBox>
  82. <mx:TileList
  83. id="listCarotidRight"
  84. visible="{_carotids}" includeInLayout="{_carotids}"
  85. dataProvider="{collectionImagesCarotidRight}"
  86. dragEnter="allowDropToTileList(event)"
  87. dragDrop="acceptDropToTileList(event)"
  88. verticalScrollPolicy="off"
  89. horizontalScrollPolicy="auto"
  90. direction="vertical"
  91. width="98%"
  92. verticalAlign="middle"
  93. height="95"
  94. styleName="containerZoneRectangle"
  95. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListCarotidRightItemRenderer"
  96. itemsChangeEffect="{dataChangeEffectCarotidRight}" />
  97. <mx:TileList
  98. id="listLegRight"
  99. visible="{_legs}" includeInLayout="{_legs}"
  100. dataProvider="{collectionImagesLegRight}"
  101. dragEnter="allowDropToTileList(event)"
  102. dragDrop="acceptDropToTileList(event)"
  103. verticalScrollPolicy="off"
  104. horizontalScrollPolicy="auto"
  105. direction="vertical"
  106. width="98%"
  107. verticalAlign="middle"
  108. height="95"
  109. styleName="containerZoneRectangle"
  110. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListLegRightItemRenderer"
  111. itemsChangeEffect="{dataChangeEffectLegRight}" />
  112. <mx:TileList
  113. id="listArmRight"
  114. visible="{_arms}" includeInLayout="{_arms}"
  115. dataProvider="{collectionImagesArmRight}"
  116. dragEnter="allowDropToTileList(event)"
  117. dragDrop="acceptDropToTileList(event)"
  118. verticalScrollPolicy="off"
  119. horizontalScrollPolicy="auto"
  120. direction="vertical"
  121. width="98%"
  122. verticalAlign="middle"
  123. height="95"
  124. styleName="containerZoneRectangle"
  125. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListArmRightItemRenderer"
  126. itemsChangeEffect="{dataChangeEffectArmRight}" />
  127. </mx:VBox>
  128. <mx:VBox horizontalAlign="center" verticalGap="2" width="100%" visible="{_body}" includeInLayout="{_body}">
  129. <mx:HBox width="98%" height="16">
  130. <mx:Label text="{resourceManager.getString( 'labels', 'label.center')}" styleName="titleGrey" />
  131. <mx:Spacer width="100%" />
  132. <mx:Label id="typeCenter" styleName="titleGrey" />
  133. </mx:HBox>
  134. <mx:TileList
  135. id="listBody"
  136. dataProvider="{collectionImagesBody}"
  137. dragEnter="allowDropToTileList(event)"
  138. dragDrop="acceptDropToTileList(event)"
  139. verticalScrollPolicy="off"
  140. horizontalScrollPolicy="auto"
  141. direction="vertical"
  142. width="98%"
  143. height="95"
  144. styleName="containerZoneRectangle"
  145. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListBodyItemRenderer"
  146. itemsChangeEffect="{dataChangeEffectBody}" />
  147. </mx:VBox>
  148. <mx:VBox horizontalAlign="center" verticalAlign="middle" verticalGap="2" width="100%" visible="{!_body}" includeInLayout="{!_body}">
  149. <mx:HBox width="98%" height="16">
  150. <mx:Label text="{resourceManager.getString( 'labels', 'label.left')}" styleName="titleGrey" />
  151. <mx:Spacer width="100%" />
  152. <mx:Label id="typeLeft" styleName="titleGrey" />
  153. </mx:HBox>
  154. <mx:TileList
  155. id="listCarotidLeft"
  156. visible="{_carotids}" includeInLayout="{_carotids}"
  157. dataProvider="{collectionImagesCarotidLeft}"
  158. dragEnter="allowDropToTileList(event)"
  159. dragDrop="acceptDropToTileList(event)"
  160. verticalScrollPolicy="off"
  161. horizontalScrollPolicy="auto"
  162. direction="vertical"
  163. width="98%"
  164. verticalAlign="middle"
  165. height="95"
  166. styleName="containerZoneRectangle"
  167. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListCarotidLeftItemRenderer"
  168. itemsChangeEffect="{dataChangeEffectCarotidLeft}" />
  169. <mx:TileList
  170. id="listLegLeft"
  171. visible="{_legs}" includeInLayout="{_legs}"
  172. dataProvider="{collectionImagesLegLeft}"
  173. dragEnter="allowDropToTileList(event)"
  174. dragDrop="acceptDropToTileList(event)"
  175. verticalScrollPolicy="off"
  176. horizontalScrollPolicy="auto"
  177. direction="vertical"
  178. width="98%"
  179. verticalAlign="middle"
  180. height="95"
  181. styleName="containerZoneRectangle"
  182. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListLegLeftItemRenderer"
  183. itemsChangeEffect="{dataChangeEffectLegLeft}" />
  184. <mx:TileList
  185. id="listArmLeft"
  186. visible="{_arms}" includeInLayout="{_arms}"
  187. dataProvider="{collectionImagesArmLeft}"
  188. dragEnter="allowDropToTileList(event)"
  189. dragDrop="acceptDropToTileList(event)"
  190. verticalScrollPolicy="off"
  191. horizontalScrollPolicy="auto"
  192. direction="vertical"
  193. width="98%"
  194. verticalAlign="middle"
  195. height="95"
  196. styleName="containerZoneRectangle"
  197. itemRenderer="com.imt.intimamedia.views.physician.acquire.TileListArmLeftItemRenderer"
  198. itemsChangeEffect="{dataChangeEffectArmLeft}" />
  199. </mx:VBox>
  200. </mx:HBox>
  201. </mx:VBox>
  202. </mx:VBox>
  203. <mx:VBox height="100%" minWidth="460" width="100%">
  204. <mx:Canvas width="100%" height="100%" styleName="containerZoneWithTitle" horizontalScrollPolicy="auto" resizeEffect="Resize">
  205. <mx:Canvas width="100%">
  206. <mx:Image source="@Embed('images/general/leftTitle.png')" />
  207. <mx:Label text="{resourceManager.getString( 'labels', 'title.display')}" styleName="titlePanel" />
  208. <mx:Image id="acquireImageSelectionHelp" visible="false" includeInLayout="false" />
  209. <mx:Image source="@Embed('images/general/question_mark.png')" click="showHelp(acquireImageSelectionHelp)" right="10" top="10" visible="{_man}" buttonMode="true" useHandCursor="true" />
  210. <mx:Image id="acquireThumbnailHelp" visible="false" includeInLayout="false" />
  211. <mx:Image id="acquireAffectationHelp" visible="false" includeInLayout="false" />
  212. <mx:Image id="acquireLesionsHelp" visible="false" includeInLayout="false" />
  213. <mx:Image source="@Embed('images/general/question_mark.png')" click="HelpUtils.loadAcquireHelp(acquireAffectationHelp)" right="10" top="10" visible="{!_man}" buttonMode="true" useHandCursor="true" />
  214. <mx:Image source="@Embed('images/acquire/man.png')"
  215. visible="{!_man &amp;&amp; !_model.enabledMeasure &amp;&amp; !_model.viewPatient}"
  216. includeInLayout="true"
  217. hideEffect="Fade" showEffect="Fade"
  218. click="flipToHuman()" left="2" top="23" />
  219. </mx:Canvas>
  220. <mx:VBox horizontalCenter="0" verticalCenter="0" paddingTop="22">
  221. <mx:VBox width="600" height="100" visible="{_man &amp;&amp; !_model.viewPatient}" includeInLayout="{_man &amp;&amp; !_model.viewPatient}" styleName="redText">
  222. <mx:VBox><mx:Text text="{resourceManager.getString( 'labels', 'body.info')}" paddingBottom="5" />
  223. <mx:Text htmlText="{resourceManager.getString( 'labels', 'body.return')}" /></mx:VBox>
  224. </mx:VBox>
  225. <mx:HBox width="550" height="17" paddingBottom="0" visible="{!_man &amp;&amp; _twoSideSelected &amp;&amp; !_body}" includeInLayout="{!_man &amp;&amp; _twoSideSelected &amp;&amp; !_body}" horizontalCenter="0" horizontalGap="1" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  226. <mx:Label text="{resourceManager.getString('labels', 'label.right')}" width="50%" paddingLeft="120" styleName="redText" />
  227. <mx:Label text="{resourceManager.getString('labels', 'label.left')}" width="50%" paddingLeft="150" styleName="redText" />
  228. </mx:HBox>
  229. <mx:ViewStack id="changeSector" creationPolicy="all" paddingTop="0">
  230. <mx:Box id="human" width="600" height="504" horizontalAlign="center" verticalAlign="middle">
  231. <mx:SWFLoader source="@Embed('swf/silouhette.swf')" click="selectZone(event)" />
  232. </mx:Box>
  233. <mx:Canvas id="carotids" width="550" height="515" paddingTop="0">
  234. <mx:Canvas id="canvasCarotids" width="100%" height="100%">
  235. <mx:HBox horizontalCenter="0" horizontalGap="1" height="100%" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  236. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  237. <panzoom:PanZoomComponent
  238. id="panzoomCarotidRight"
  239. width="226" height="484"
  240. borderStyle="solid" borderColor="#7c0b13"
  241. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  242. contentWidth="205" contentHeight="465"
  243. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  244. childPreventsPan="true" zoom="zoomChanged( sliderCarotidRight, panzoomCarotidRight )">
  245. <mx:Canvas id="canvasCarotidRight" width="100%" height="100%">
  246. <mx:SWFLoader source="@Embed('swf/rightCarotid.swf')"
  247. dragEnter="allowDropFromRightList(event)"
  248. dragDrop="dropOnSWF(event, CAROTID_RIGHT)"
  249. mouseOver="rollOverSegment(event, CAROTID_RIGHT, canvasCarotidRight)"
  250. mouseMove="addCursor()"
  251. mouseOut="rollOutSegment(event)"
  252. click="addMarkerOrDisplayPictures(event, CAROTID_RIGHT, canvasCarotidRight)" />
  253. </mx:Canvas>
  254. </panzoom:PanZoomComponent>
  255. <mx:HSlider
  256. id="sliderCarotidRight"
  257. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  258. value="100" width="100%"
  259. liveDragging="true"
  260. change="sliderChanged( sliderCarotidRight, panzoomCarotidRight )" />
  261. </mx:VBox>
  262. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  263. <panzoom:PanZoomComponent
  264. id="panzoomCarotidLeft"
  265. width="226" height="484"
  266. borderStyle="solid" borderColor="#7c0b13"
  267. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  268. contentWidth="205" contentHeight="465"
  269. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  270. childPreventsPan="true" zoom="zoomChanged( sliderCarotidLeft, panzoomCarotidLeft )">
  271. <mx:Canvas id="canvasCarotidLeft" width="100%" height="100%">
  272. <mx:SWFLoader source="@Embed('swf/leftCarotid.swf')"
  273. dragEnter="allowDropFromLeftList(event)"
  274. dragDrop="dropOnSWF(event, CAROTID_LEFT)"
  275. mouseOver="rollOverSegment(event, CAROTID_LEFT, canvasCarotidLeft)"
  276. mouseMove="addCursor()"
  277. mouseOut="rollOutSegment(event)"
  278. click="addMarkerOrDisplayPictures(event, CAROTID_LEFT, canvasCarotidLeft)" />
  279. </mx:Canvas>
  280. </panzoom:PanZoomComponent>
  281. <mx:HSlider
  282. id="sliderCarotidLeft"
  283. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  284. value="100" width="100%"
  285. liveDragging="true"
  286. change="sliderChanged( sliderCarotidLeft, panzoomCarotidLeft )" />
  287. </mx:VBox>
  288. </mx:HBox>
  289. </mx:Canvas>
  290. </mx:Canvas>
  291. <mx:Canvas id="body" width="550" height="504">
  292. <mx:Canvas id="canvasBodyMain" width="100%" height="100%">
  293. <mx:VBox verticalGap="0" horizontalCenter="0" horizontalGap="1" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  294. <panzoom:PanZoomComponent
  295. id="panzoomBody"
  296. width="226" height="484"
  297. borderStyle="solid" borderColor="#7c0b13"
  298. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  299. contentWidth="205" contentHeight="465"
  300. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  301. childPreventsPan="true" zoom="zoomChanged( sliderBody, panzoomBody )">
  302. <mx:Canvas id="canvasBody" width="100%" height="100%">
  303. <mx:SWFLoader source="@Embed('swf/body.swf')"
  304. dragEnter="allowDropFromBodyList(event)"
  305. dragDrop="dropOnSWF(event, BODY_AORTE)"
  306. mouseOver="rollOverSegment(event, BODY_AORTE, canvasBody)"
  307. mouseMove="addCursor()"
  308. mouseOut="rollOutSegment(event)"
  309. click="addMarkerOrDisplayPictures(event, BODY_AORTE, canvasBody)" />
  310. </mx:Canvas>
  311. </panzoom:PanZoomComponent>
  312. <mx:HSlider
  313. id="sliderBody"
  314. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  315. value="100" width="100%"
  316. liveDragging="true"
  317. change="sliderChanged( sliderBody, panzoomBody )" />
  318. </mx:VBox>
  319. </mx:Canvas>
  320. </mx:Canvas>
  321. <mx:Canvas id="arms" width="550" height="504">
  322. <mx:Canvas id="canvasArms" width="100%" height="100%">
  323. <mx:HBox horizontalCenter="0" verticalCenter="0" horizontalGap="1" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  324. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  325. <panzoom:PanZoomComponent
  326. id="panzoomArmRight"
  327. width="226" height="484"
  328. borderStyle="solid" borderColor="#7c0b13"
  329. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  330. contentWidth="205" contentHeight="465"
  331. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  332. childPreventsPan="true" zoom="zoomChanged( sliderArmRight, panzoomArmRight )">
  333. <mx:Canvas id="canvasArmRight" width="100%" height="100%">
  334. <mx:SWFLoader source="@Embed('swf/rightArm.swf')"
  335. dragEnter="allowDropFromRightList(event)"
  336. dragDrop="dropOnSWF(event, ARM_RIGHT)"
  337. mouseOver="rollOverSegment(event, ARM_RIGHT, canvasArmRight)"
  338. mouseOut="rollOutSegment(event)"
  339. mouseMove="addCursor()"
  340. click="addMarkerOrDisplayPictures(event, ARM_RIGHT, canvasArmRight)" />
  341. </mx:Canvas>
  342. </panzoom:PanZoomComponent>
  343. <mx:HSlider
  344. id="sliderArmRight"
  345. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  346. value="100" width="100%"
  347. liveDragging="true"
  348. change="sliderChanged( sliderArmRight, panzoomArmRight )" />
  349. </mx:VBox>
  350. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  351. <panzoom:PanZoomComponent
  352. id="panzoomArmLeft"
  353. width="226" height="484"
  354. borderStyle="solid" borderColor="#7c0b13"
  355. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  356. contentWidth="205" contentHeight="465"
  357. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  358. childPreventsPan="true" zoom="zoomChanged( sliderArmLeft, panzoomArmLeft )">
  359. <mx:Canvas id="canvasArmLeft" width="100%" height="100%">
  360. <mx:SWFLoader source="@Embed('swf/leftArm.swf')"
  361. dragEnter="allowDropFromLeftList(event)"
  362. dragDrop="dropOnSWF(event, ARM_LEFT)"
  363. mouseOver="rollOverSegment(event, ARM_LEFT, canvasArmLeft)"
  364. mouseOut="rollOutSegment(event)"
  365. mouseMove="addCursor()"
  366. click="addMarkerOrDisplayPictures(event, ARM_LEFT, canvasArmLeft)" />
  367. </mx:Canvas>
  368. </panzoom:PanZoomComponent>
  369. <mx:HSlider
  370. id="sliderArmLeft"
  371. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  372. value="100" width="100%"
  373. liveDragging="true"
  374. change="sliderChanged( sliderArmLeft, panzoomArmLeft )" />
  375. </mx:VBox>
  376. </mx:HBox>
  377. </mx:Canvas>
  378. </mx:Canvas>
  379. <mx:Canvas id="legs" width="550" height="504">
  380. <mx:HBox horizontalCenter="0" verticalCenter="0" horizontalGap="1" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  381. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  382. <panzoom:PanZoomComponent
  383. id="panzoomLegRight"
  384. width="226" height="484"
  385. borderStyle="solid" borderColor="#7c0b13"
  386. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  387. contentWidth="205" contentHeight="465"
  388. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  389. childPreventsPan="true" zoom="zoomChanged( sliderLegRight, panzoomLegRight )">
  390. <mx:Canvas id="canvasLegRight" width="100%" height="100%">
  391. <mx:SWFLoader source="@Embed('swf/rightLeg.swf')"
  392. dragEnter="allowDropFromRightList(event)"
  393. dragDrop="dropOnSWF(event, LEG_RIGHT)"
  394. mouseOver="rollOverSegment(event, LEG_RIGHT, canvasLegRight)"
  395. mouseOut="rollOutSegment(event)"
  396. mouseMove="addCursor()"
  397. click="addMarkerOrDisplayPictures(event, LEG_RIGHT, canvasLegRight)" />
  398. </mx:Canvas>
  399. </panzoom:PanZoomComponent>
  400. <mx:HSlider
  401. id="sliderLegRight"
  402. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  403. value="100" width="100%"
  404. liveDragging="true"
  405. change="sliderChanged( sliderLegRight, panzoomLegRight )" />
  406. </mx:VBox>
  407. <mx:VBox verticalGap="0" verticalScrollPolicy="off" horizontalScrollPolicy="off">
  408. <panzoom:PanZoomComponent
  409. id="panzoomLegLeft"
  410. width="226" height="484"
  411. borderStyle="solid" borderColor="#7c0b13"
  412. scaleMin="{MIN_ZOOM}" scaleMax="{MAX_ZOOM}"
  413. contentWidth="205" contentHeight="465"
  414. verticalScrollPolicy="off" horizontalScrollPolicy="off"
  415. childPreventsPan="true" zoom="zoomChanged( sliderLegLeft, panzoomLegLeft )">
  416. <mx:Canvas id="canvasLegLeft" width="100%" height="100%">
  417. <mx:SWFLoader source="@Embed('swf/leftLeg.swf')"
  418. dragEnter="allowDropFromLeftList(event)"
  419. dragDrop="dropOnSWF(event, LEG_LEFT)"
  420. mouseOver="rollOverSegment(event, LEG_LEFT, canvasLegLeft)"
  421. mouseOut="rollOutSegment(event)"
  422. mouseMove="addCursor()"
  423. click="addMarkerOrDisplayPictures(event, LEG_LEFT, canvasLegLeft)" />
  424. </mx:Canvas>
  425. </panzoom:PanZoomComponent>
  426. <mx:HSlider
  427. id="sliderLegLeft"
  428. minimum="{MIN_ZOOM * 100.5}" maximum="{MAX_ZOOM * 100}"
  429. value="100" width="100%"
  430. liveDragging="true"
  431. change="sliderChanged( sliderLegLeft, panzoomLegLeft )" />
  432. </mx:VBox>
  433. </mx:HBox>
  434. </mx:Canvas>
  435. </mx:ViewStack>
  436. <mx:VBox width="100%" height="16" paddingTop="0" horizontalAlign="center" paddingLeft="450" verticalAlign="middle" visible="{!_man}" includeInLayout="{!_man}" showEffect="Fade">
  437. <mx:Image source="@Embed('images/acquire/zoom.png')" toolTip="{resourceManager.getString('labels', 'acquire.slider.zoom')}" useHandCursor="true" buttonMode="true" />
  438. </mx:VBox>
  439. <mx:Spacer height="15" />
  440. <mx:HBox width="100%" visible="{!_man}" includeInLayout="{!_man}" horizontalAlign="center" verticalAlign="middle" showEffect="Fade">
  441. <mx:Button toggle="true" toolTip="{resourceManager.getString('labels', 'lesionsHowTo')}" visible="{!_model.viewPatient}" id="buttonPlaque" label="{resourceManager.getString( 'labels', 'button.plaque')}" icon="@Embed('images/acquire/plaque.png')" height="30" width="120" click="changeCursor(plaque, SWF_PLAQUE, event, [ buttonStenosis, buttonOcclusion ])" />
  442. <mx:Button toggle="true" toolTip="{resourceManager.getString('labels', 'lesionsHowTo')}" visible="{!_model.viewPatient}" id="buttonStenosis" label="{resourceManager.getString( 'labels', 'button.stenose')}" icon="@Embed('images/acquire/stenose.png')" height="30" width="120" click="changeCursor(stenose, SWF_STENOSE, event, [ buttonPlaque, buttonOcclusion ])" />
  443. <mx:Button toggle="true" toolTip="{resourceManager.getString('labels', 'lesionsHowTo')}" visible="{!_model.viewPatient}" id="buttonOcclusion" label="{resourceManager.getString( 'labels', 'button.occlusion')}" icon="@Embed('images/acquire/occlusion.png')" height="30" width="120" click="changeCursor(occlusion, SWF_OCCLUSION, event, [ buttonPlaque, buttonStenosis ])" />
  444. <mx:Image source="@Embed('images/general/question_mark.png')" click="HelpUtils.loadAcquireHelp(acquireLesionsHelp)" visible="{!_model.viewPatient}" right="15" buttonMode="true" useHandCursor="true" />
  445. </mx:HBox>
  446. </mx:VBox>
  447. </mx:Canvas>
  448. </mx:VBox>
  449. <mx:Sequence id="dataChangeEffect">
  450. <mx:Blur
  451. blurYTo="12" blurXTo="12"
  452. duration="300"
  453. perElementOffset="150"
  454. filter="removeItem"/>
  455. <mx:SetPropertyAction
  456. name="visible" value="false"
  457. filter="removeItem"/>
  458. <mx:UnconstrainItemAction/>
  459. <mx:Parallel>
  460. <mx:Move
  461. duration="750"
  462. easingFunction="{Elastic.easeOut}"
  463. perElementOffset="20"/>
  464. <mx:RemoveItemAction
  465. startDelay="400"
  466. filter="removeItem"/>
  467. <mx:AddItemAction
  468. startDelay="400"
  469. filter="addItem"/>
  470. <mx:Blur
  471. startDelay="410"
  472. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  473. duration="300"
  474. filter="addItem"/>
  475. </mx:Parallel>
  476. </mx:Sequence>
  477. <mx:Sequence id="dataChangeEffectCarotidRight">
  478. <mx:Blur
  479. blurYTo="12" blurXTo="12"
  480. duration="300"
  481. perElementOffset="150"
  482. filter="removeItem"/>
  483. <mx:SetPropertyAction
  484. name="visible" value="false"
  485. filter="removeItem"/>
  486. <mx:UnconstrainItemAction/>
  487. <mx:Parallel>
  488. <mx:Move
  489. duration="750"
  490. easingFunction="{Elastic.easeOut}"
  491. perElementOffset="20"/>
  492. <mx:RemoveItemAction
  493. startDelay="400"
  494. filter="removeItem"/>
  495. <mx:AddItemAction
  496. startDelay="400"
  497. filter="addItem"/>
  498. <mx:Blur
  499. startDelay="410"
  500. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  501. duration="300"
  502. filter="addItem"/>
  503. </mx:Parallel>
  504. </mx:Sequence>
  505. <mx:Sequence id="dataChangeEffectLegRight">
  506. <mx:Blur
  507. blurYTo="12" blurXTo="12"
  508. duration="300"
  509. perElementOffset="150"
  510. filter="removeItem"/>
  511. <mx:SetPropertyAction
  512. name="visible" value="false"
  513. filter="removeItem"/>
  514. <mx:UnconstrainItemAction/>
  515. <mx:Parallel>
  516. <mx:Move
  517. duration="750"
  518. easingFunction="{Elastic.easeOut}"
  519. perElementOffset="20"/>
  520. <mx:RemoveItemAction
  521. startDelay="400"
  522. filter="removeItem"/>
  523. <mx:AddItemAction
  524. startDelay="400"
  525. filter="addItem"/>
  526. <mx:Blur
  527. startDelay="410"
  528. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  529. duration="300"
  530. filter="addItem"/>
  531. </mx:Parallel>
  532. </mx:Sequence>
  533. <mx:Sequence id="dataChangeEffectArmRight">
  534. <mx:Blur
  535. blurYTo="12" blurXTo="12"
  536. duration="300"
  537. perElementOffset="150"
  538. filter="removeItem"/>
  539. <mx:SetPropertyAction
  540. name="visible" value="false"
  541. filter="removeItem"/>
  542. <mx:UnconstrainItemAction/>
  543. <mx:Parallel>
  544. <mx:Move
  545. duration="750"
  546. easingFunction="{Elastic.easeOut}"
  547. perElementOffset="20"/>
  548. <mx:RemoveItemAction
  549. startDelay="400"
  550. filter="removeItem"/>
  551. <mx:AddItemAction
  552. startDelay="400"
  553. filter="addItem"/>
  554. <mx:Blur
  555. startDelay="410"
  556. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  557. duration="300"
  558. filter="addItem"/>
  559. </mx:Parallel>
  560. </mx:Sequence>
  561. <mx:Sequence id="dataChangeEffectCarotidLeft">
  562. <mx:Blur
  563. blurYTo="12" blurXTo="12"
  564. duration="300"
  565. perElementOffset="150"
  566. filter="removeItem"/>
  567. <mx:SetPropertyAction
  568. name="visible" value="false"
  569. filter="removeItem"/>
  570. <mx:UnconstrainItemAction/>
  571. <mx:Parallel>
  572. <mx:Move
  573. duration="750"
  574. easingFunction="{Elastic.easeOut}"
  575. perElementOffset="20"/>
  576. <mx:RemoveItemAction
  577. startDelay="400"
  578. filter="removeItem"/>
  579. <mx:AddItemAction
  580. startDelay="400"
  581. filter="addItem"/>
  582. <mx:Blur
  583. startDelay="410"
  584. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  585. duration="300"
  586. filter="addItem"/>
  587. </mx:Parallel>
  588. </mx:Sequence>
  589. <mx:Sequence id="dataChangeEffectLegLeft">
  590. <mx:Blur
  591. blurYTo="12" blurXTo="12"
  592. duration="300"
  593. perElementOffset="150"
  594. filter="removeItem"/>
  595. <mx:SetPropertyAction
  596. name="visible" value="false"
  597. filter="removeItem"/>
  598. <mx:UnconstrainItemAction/>
  599. <mx:Parallel>
  600. <mx:Move
  601. duration="750"
  602. easingFunction="{Elastic.easeOut}"
  603. perElementOffset="20"/>
  604. <mx:RemoveItemAction
  605. startDelay="400"
  606. filter="removeItem"/>
  607. <mx:AddItemAction
  608. startDelay="400"
  609. filter="addItem"/>
  610. <mx:Blur
  611. startDelay="410"
  612. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  613. duration="300"
  614. filter="addItem"/>
  615. </mx:Parallel>
  616. </mx:Sequence>
  617. <mx:Sequence id="dataChangeEffectArmLeft">
  618. <mx:Blur
  619. blurYTo="12" blurXTo="12"
  620. duration="300"
  621. perElementOffset="150"
  622. filter="removeItem"/>
  623. <mx:SetPropertyAction
  624. name="visible" value="false"
  625. filter="removeItem"/>
  626. <mx:UnconstrainItemAction/>
  627. <mx:Parallel>
  628. <mx:Move
  629. duration="750"
  630. easingFunction="{Elastic.easeOut}"
  631. perElementOffset="20"/>
  632. <mx:RemoveItemAction
  633. startDelay="400"
  634. filter="removeItem"/>
  635. <mx:AddItemAction
  636. startDelay="400"
  637. filter="addItem"/>
  638. <mx:Blur
  639. startDelay="410"
  640. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  641. duration="300"
  642. filter="addItem"/>
  643. </mx:Parallel>
  644. </mx:Sequence>
  645. <mx:Sequence id="dataChangeEffectBody">
  646. <mx:Blur
  647. blurYTo="12" blurXTo="12"
  648. duration="300"
  649. perElementOffset="150"
  650. filter="removeItem"/>
  651. <mx:SetPropertyAction
  652. name="visible" value="false"
  653. filter="removeItem"/>
  654. <mx:UnconstrainItemAction/>
  655. <mx:Parallel>
  656. <mx:Move
  657. duration="750"
  658. easingFunction="{Elastic.easeOut}"
  659. perElementOffset="20"/>
  660. <mx:RemoveItemAction
  661. startDelay="400"
  662. filter="removeItem"/>
  663. <mx:AddItemAction
  664. startDelay="400"
  665. filter="addItem"/>
  666. <mx:Blur
  667. startDelay="410"
  668. blurXFrom="18" blurYFrom="18" blurXTo="0" blurYTo="0"
  669. duration="300"
  670. filter="addItem"/>
  671. </mx:Parallel>
  672. </mx:Sequence>
  673. </mx:HBox>