scalePopUp.as 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. import com.imt.containers.BlankPaperWrapper;
  2. import com.imt.intimamedia.helpers.ScaleCursor;
  3. import com.imt.intimamedia.model.ApplicationModelLocator;
  4. import com.imt.intimamedia.views.common.ImtToaster;
  5. import com.imt.intimamedia.views.physician.measure.MeasureView;
  6. import com.imt.intimamedia.vo.DragAndDropVo;
  7. import com.imt.intimamedia.vo.ScaleCjVo;
  8. import com.imt.intimamedia.vo.ScaleVo;
  9. import com.imt.intimamedia.vo.UltraSoundScannerVo;
  10. import flash.ui.Mouse;
  11. import flexlib.containers.DragScrollingCanvas;
  12. import mx.collections.ArrayCollection;
  13. import mx.containers.Canvas;
  14. import mx.controls.Alert;
  15. import mx.controls.Button;
  16. import mx.controls.ComboBox;
  17. import mx.controls.Image;
  18. import mx.controls.Label;
  19. import mx.events.ListEvent;
  20. import mx.managers.CursorManager;
  21. import mx.managers.PopUpManager;
  22. import mx.resources.ResourceManager;
  23. import mx.utils.ObjectUtil;
  24. [Bindable]
  25. public var scaleVo : ScaleCjVo;
  26. public var element : DragAndDropVo;
  27. public var imtButton : Button;
  28. public var distanceButton : Button;
  29. public var areaButton : Button;
  30. public var moveEnabled : Boolean;
  31. public var drawEnabled : Boolean;
  32. public var scaleValue : Label;
  33. public var parentMeasure : MeasureView;
  34. [Bindable]
  35. private var _model : ApplicationModelLocator = ApplicationModelLocator.getInstance();
  36. private function creation() : void
  37. {
  38. CursorManager.removeAllCursors();
  39. if (parentMeasure.sprite.numChildren)
  40. parentMeasure.sprite.removeChildAt(0);
  41. }
  42. private function closeHandler() : void
  43. {
  44. PopUpManager.removePopUp( this );
  45. parentMeasure.imtButton.enabled = false;
  46. parentMeasure.distanceButton.enabled = false;
  47. parentMeasure.areaButton.enabled = false;
  48. parentMeasure.imtButton.selected = false;
  49. parentMeasure.distanceButton.selected = false;
  50. parentMeasure.areaButton.selected = false;
  51. parentMeasure.removeChildren();
  52. var toastMessage : ImtToaster = new ImtToaster();
  53. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'measures.imt.title');
  54. toastMessage.message = ResourceManager.getInstance().getString('labels', 'measures.label.retry');
  55. toastMessage.level = ImtToaster.INFORMATION;
  56. _model.toaster.toast( toastMessage );
  57. }
  58. private function addScale() : void
  59. {
  60. var toastMessage : ImtToaster;
  61. var scale : int = scaleNumericStepper.value;
  62. // to uncomment later
  63. //element.ultrasoudscanner = ObjectUtil.copy( scanners.selectedItem ) as UltraSoundScannerVo;
  64. //element.ultrasoudscanner.probes = new Array();
  65. //element.ultrasoudscanner.probes.push( ObjectUtil.copy( probes.selectedItem ) );
  66. //moveEnabled = false;
  67. //drawEnabled = false;
  68. parentMeasure.imtButton.enabled = true;
  69. parentMeasure.distanceButton.enabled = true;
  70. parentMeasure.areaButton.enabled = true;
  71. parentMeasure.imtButton.selected = false;
  72. parentMeasure.distanceButton.selected = false;
  73. parentMeasure.areaButton.selected = false;
  74. parentMeasure.manualScale.selected = false;
  75. parentMeasure.canvas = new Canvas();
  76. parentMeasure.canvas.width = parentMeasure.imageZoom.width;
  77. parentMeasure.canvas.height = parentMeasure.imageZoom.height;
  78. parentMeasure.canvas.name = "SCALE";
  79. parentMeasure.removeChildren();
  80. parentMeasure.imageZoom.addChild( parentMeasure.canvas );
  81. parentMeasure.scale.setLength(scale);
  82. parentMeasure.scale.draw( (parentMeasure.listImages.selectedItem as DragAndDropVo ).imageHigh.bitmapData.width, (parentMeasure.listImages.selectedItem as DragAndDropVo ).imageHigh.bitmapData.height, parentMeasure.m_imageResizee.dimh, parentMeasure.m_imageResizee.dimv,parentMeasure.canvas.graphics, parentMeasure.imageCJ, parentMeasure.sprite );
  83. if (!element.scale)
  84. element.scale = new ScaleVo();
  85. element.scale.value = scale / Math.abs( parentMeasure.scale.m_points[parentMeasure.scale.m_nbPoints - 1].y - parentMeasure.scale.m_points[0].y );
  86. element.scale.length = scale;
  87. element.scale.xFirstPoint = parentMeasure.scale.getXFirstPoint();
  88. element.scale.yFirstPoint = parentMeasure.scale.getYFirstPoint();
  89. element.scale.xLastPoint = parentMeasure.scale.getXLastPoint();
  90. element.scale.yLastPoint = parentMeasure.scale.getYLastPoint();
  91. // uncomment later ?
  92. //parentMeasure.scaleValue.text = formatNumber.format( element.scale ) + " " + ResourceManager.getInstance().getString( 'labels', 'measure.scale.popup.unit.pixel' );
  93. PopUpManager.removePopUp( this );
  94. parentMeasure.scaleMode = false;
  95. parentMeasure.resetScaleCursor();
  96. if (element.fwImtResult || element.nwImtResult)
  97. {
  98. parentMeasure.imtResults = new ArrayCollection();
  99. element.fwImtResult = null;
  100. element.nwImtResult = null;
  101. toastMessage = new ImtToaster();
  102. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'measures.imt.title');
  103. toastMessage.message = ResourceManager.getInstance().getString('labels', 'measures.imt.remove');
  104. toastMessage.level = ImtToaster.WARNING;
  105. _model.toaster.toast( toastMessage );
  106. }
  107. else
  108. {
  109. toastMessage = new ImtToaster();
  110. toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'measures.imt.title');
  111. toastMessage.message = ResourceManager.getInstance().getString('labels', 'measures.label.info');
  112. toastMessage.level = ImtToaster.INFORMATION;
  113. _model.toaster.toast( toastMessage );
  114. }
  115. }
  116. private function changeScanner( event : ListEvent ) : void
  117. {
  118. // uncomment later
  119. //probes.dataProvider = _model.listUltraSoundScanner.getItemAt( ( event.target as ComboBox ).selectedIndex ).probes;
  120. }