SPMRC03100.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.4">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMRC03100" position="absolute 0 0 655 975" titletext="Untitle" oninit="SPMRC03100_oninit" onload="SPMRC03100_onload" onsize="SPMRC03100_onsize" style="background:#3366ffff;border:0 none #99ccffff #99ccffff;" usebitmapcache="true">
  5. <Layouts>
  6. <Layout>
  7. <ActiveX id="f_preview" progid="{26a5a05a-2193-4ee2-a064-f04d3c37705a}" useautobitmapcache="1" taborder="2"/>
  8. <Div id="group1" taborder="3" style="background:#99ccffff;border:1 none #ccffffff #ccffffff;" position="absolute 20 10 645 50">
  9. <Layouts>
  10. <Layout>
  11. <Tab id="switch1" taborder="0" tabindex="0" position="absolute 0 -11 415 35" style="buttonbackground:transparent;background:transparent;">
  12. <Tabpages>
  13. <Tabpage id="case3">
  14. <Layouts>
  15. <Layout>
  16. <Button id="button1" taborder="12" ondblclick="group1_switch1_case3_button1_ondblclick" onclick="group1_switch1_case3_button1_onclick" position="absolute 10 0 40 30" tooltiptext="처음페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_first.png') center middle;"/>
  17. <Button id="button2" taborder="13" ondblclick="group1_switch1_case3_button2_ondblclick" onclick="group1_switch1_case3_button2_onclick" position="absolute 40 0 70 30" tooltiptext="이전페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_prev.png') center middle;"/>
  18. <Button id="button3" taborder="14" ondblclick="group1_switch1_case3_button3_ondblclick" onclick="group1_switch1_case3_button3_onclick" position="absolute 70 0 100 30" tooltiptext="다음페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_next.png') center middle;"/>
  19. <Button id="button4" taborder="15" ondblclick="group1_switch1_case3_button4_ondblclick" onclick="group1_switch1_case3_button4_onclick" position="absolute 100 0 130 30" tooltiptext="마지막페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_last.png') center middle;"/>
  20. <Button id="button5" taborder="16" ondblclick="group1_switch1_case3_button5_ondblclick" onclick="group1_switch1_case3_button5_onclick" position="absolute 140 0 170 30" tooltiptext="마우스모드기본" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_none.png') center middle;"/>
  21. <Button id="button6" taborder="17" ondblclick="group1_switch1_case3_button6_ondblclick" onclick="group1_switch1_case3_button6_onclick" position="absolute 170 0 200 30" tooltiptext="마우스모드끌기" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_panning.png') center middle;"/>
  22. <Button id="button7" taborder="18" ondblclick="group1_switch1_case3_button7_ondblclick" onclick="group1_switch1_case3_button7_onclick" position="absolute 200 0 230 30" tooltiptext="마우스모드확대" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_zoom.png') center middle;"/>
  23. <Button id="but_regionzoom" taborder="19" ondblclick="group1_switch1_case3_but_regionzoom_ondblclick" onclick="group1_switch1_case3_but_regionzoom_onclick" position="absolute 230 0 260 30" tooltiptext="마우스모드드래그확대" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_ratio.png') center middle;"/>
  24. <Button id="but_fit" taborder="20" ondblclick="group1_switch1_case3_but_fit_ondblclick" onclick="group1_switch1_case3_but_fit_onclick" position="absolute 270 0 300 30" tooltiptext="이미지화면에 맞추기" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\bestfit.png') center middle;"/>
  25. <Button id="but_leftturn" taborder="21" ondblclick="group1_switch1_case3_but_leftturn_ondblclick" onclick="group1_switch1_case3_but_leftturn_onclick" position="absolute 310 0 340 30" tooltiptext="이미지 왼쪽90도 회전" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\turn_left.png') center middle;"/>
  26. <Button id="but_rightturn" taborder="22" ondblclick="group1_switch1_case3_but_rightturn_ondblclick" onclick="group1_switch1_case3_but_rightturn_onclick" position="absolute 340 0 370 30" tooltiptext="이미지 오른쪽90도 회전" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\turn_right.png') center middle;"/>
  27. </Layout>
  28. </Layouts>
  29. </Tabpage>
  30. </Tabpages>
  31. </Tab>
  32. </Layout>
  33. </Layouts>
  34. </Div>
  35. <ActiveX id="f_View" position="absolute 15 50 645 385" progid="{26a5a05a-2193-4ee2-a064-f04d3c37705a}" windowed="true" useautobitmapcache="1" anchor="all" taborder="4" AutoRefresh="0" ActionParamSTRING1="f_View_MouseWheel" IsThreadRun="0" FitMode="FV_FitModeCustom" MouseUp="f_View_MouseUp" ImageClick="f_View_ImageClick" MouseWheel="f_View_MouseWheel"/>
  36. </Layout>
  37. </Layouts>
  38. <Objects>
  39. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  40. <ColumnInfo>
  41. <Column id="radio" type="STRING" size="256"/>
  42. </ColumnInfo>
  43. <Rows>
  44. <Row>
  45. <Col id="radio">CV</Col>
  46. </Row>
  47. </Rows>
  48. </Dataset>
  49. </Objects>
  50. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  51. * System Name : HIT
  52. * Job Name :
  53. * File Name : .xfdl
  54. * Creator :
  55. * Make Date : 2014-10-08
  56. *
  57. * Description :
  58. *---------------------------------------------------------------------------------------
  59. * Modify Date Modifier Modify Description
  60. *---------------------------------------------------------------------------------------
  61. * 2014-10-08 HIT
  62. *
  63. *---------------------------------------------------------------------------------------
  64. ****************************************************************************************/
  65. //=======================================================================================
  66. // Lib Include
  67. //---------------------------------------------------------------------------------------
  68. include "com_commonxp::comm_main.xjs"
  69. //=======================================================================================
  70. // Global Form Variable
  71. //---------------------------------------------------------------------------------------
  72. var arErrorCode = new HashArray();
  73. var hidden_currentViewMode = "";
  74. //=======================================================================================
  75. // Function
  76. //---------------------------------------------------------------------------------------
  77. /****************************************************************************************
  78. * Argument : 01.sKey : 코드아이디
  79. * : 02.sValue : 코드명
  80. * Description : 공통코드를 가져온다.
  81. ****************************************************************************************/
  82. //=======================================================================================
  83. // Transaction Callback
  84. //---------------------------------------------------------------------------------------
  85. /****************************************************************************************
  86. * Argument : 01.sSvcId : 서비스 ID
  87. * : 02.nErrorCode : 에러코드
  88. * : 03.sErrorMsg : 에러메시지
  89. * Description : tr_getCodeList의 콜백함수
  90. ****************************************************************************************/
  91. //=======================================================================================
  92. // Event
  93. //---------------------------------------------------------------------------------------
  94. /****************************************************************************************
  95. * Components :
  96. * Components ID : button5
  97. * Event : onlbuttonup
  98. * Argument : 01.obj : Object Event has occurred
  99. * : 02.e : Event Object
  100. * Description :
  101. ****************************************************************************************/
  102. function SPMRC03100_oninit(obj:Form, e:InitEventInfo)
  103. {
  104. frmf_initForm(obj);
  105. }
  106. function SPMRC03100_onload(obj:Form, e:LoadEventInfo)
  107. {
  108. fInitilize();
  109. }
  110. function SPMRC03100_onsize(obj:Form, e:SizeEventInfo)
  111. {
  112. fGetResize();
  113. }
  114. function f_View_ImageClick(obj:ActiveX, e)
  115. {
  116. ImageClick_event(e.Page, e.ShiftFlag, e.ButtonFlag);
  117. }
  118. function f_View_MouseWheel(obj:ActiveX, e)
  119. {
  120. MouseWheel_event(e.FlagShift, e.FlagShift, e.zDelta);
  121. }
  122. function group1_switch1_case3_button1_onclick(obj:Button, e:ClickEventInfo)
  123. {
  124. PvMovePage("first");
  125. }
  126. function group1_switch1_case3_button1_ondblclick(obj:Button, e:MouseEventInfo)
  127. {
  128. PvMovePage("first");
  129. }
  130. function group1_switch1_case3_button2_onclick(obj:Button, e:ClickEventInfo)
  131. {
  132. PvMovePage("prev");
  133. }
  134. function group1_switch1_case3_button2_ondblclick(obj:Button, e:MouseEventInfo)
  135. {
  136. PvMovePage("prev");
  137. }
  138. function group1_switch1_case3_button3_onclick(obj:Button, e:ClickEventInfo)
  139. {
  140. PvMovePage("next");
  141. }
  142. function group1_switch1_case3_button3_ondblclick(obj:Button, e:MouseEventInfo)
  143. {
  144. PvMovePage("next");
  145. }
  146. function group1_switch1_case3_button4_onclick(obj:Button, e:ClickEventInfo)
  147. {
  148. PvMovePage("last");
  149. }
  150. function group1_switch1_case3_button4_ondblclick(obj:Button, e:MouseEventInfo)
  151. {
  152. PvMovePage("last");
  153. }
  154. function group1_switch1_case3_button5_onclick(obj:Button, e:ClickEventInfo)
  155. {
  156. PvMousePage("normal");
  157. }
  158. function group1_switch1_case3_button5_ondblclick(obj:Button, e:MouseEventInfo)
  159. {
  160. PvMousePage("normal");
  161. }
  162. function group1_switch1_case3_button6_onclick(obj:Button, e:ClickEventInfo)
  163. {
  164. PvMousePage("panning");
  165. }
  166. function group1_switch1_case3_button6_ondblclick(obj:Button, e:MouseEventInfo)
  167. {
  168. PvMousePage("panning");
  169. }
  170. function group1_switch1_case3_button7_onclick(obj:Button, e:ClickEventInfo)
  171. {
  172. PvMousePage("zoom");
  173. }
  174. function group1_switch1_case3_button7_ondblclick(obj:Button, e:MouseEventInfo)
  175. {
  176. PvMousePage("zoom");
  177. }
  178. function group1_switch1_case3_but_regionzoom_onclick(obj:Button, e:ClickEventInfo)
  179. {
  180. PvMousePage("regionzoom");
  181. }
  182. function group1_switch1_case3_but_regionzoom_ondblclick(obj:Button, e:MouseEventInfo)
  183. {
  184. PvMousePage("regionzoom");
  185. }
  186. function group1_switch1_case3_but_fit_onclick(obj:Button, e:ClickEventInfo)
  187. {
  188. PvFit();
  189. }
  190. function group1_switch1_case3_but_fit_ondblclick(obj:Button, e:MouseEventInfo)
  191. {
  192. PvFit();
  193. }
  194. function group1_switch1_case3_but_leftturn_onclick(obj:Button, e:ClickEventInfo)
  195. {
  196. PvTurn("left");
  197. }
  198. function group1_switch1_case3_but_leftturn_ondblclick(obj:Button, e:MouseEventInfo)
  199. {
  200. PvTurn("left");
  201. }
  202. function group1_switch1_case3_but_rightturn_onclick(obj:Button, e:ClickEventInfo)
  203. {
  204. PvTurn("right");
  205. }
  206. function group1_switch1_case3_but_rightturn_ondblclick(obj:Button, e:MouseEventInfo)
  207. {
  208. PvTurn("right");
  209. }
  210. /*
  211. - =======================================================================================
  212. Image EMR Viewer Program (SPMRC03100.js)
  213. - Version :
  214. 1) : Ver.1.00.00
  215. - =======================================================================================
  216. */
  217. function fInitilize()
  218. {
  219. fGetResize();
  220. var windowleft = 0;
  221. var windowtop = 0;
  222. var windowcount;
  223. var count;
  224. var expobj = new ExtCommon();
  225. expobj.SetTopWindow(1); // TopMost Window (default)
  226. /*
  227. window.modelessTopmost = true;
  228. windowcount = window.parent.children.length;
  229. for(count = 0; count < windowcount; count++)
  230. {
  231. if (count == 1)
  232. {
  233. window.parent.children.item(count).left = window.parent.children.item(0).left + window.parent.children.item(0).width;
  234. window.parent.children.item(count).top = windowtop;
  235. }
  236. else
  237. {
  238. if (count == 0)
  239. {
  240. window.parent.children.item(count).left = windowleft + (count)*25;
  241. window.parent.children.item(count).top = windowtop + (count)*25;
  242. }
  243. else
  244. {
  245. window.parent.children.item(count).left = windowleft + (count - 1)*25;
  246. window.parent.children.item(count).top = windowtop + (count - 1)*25;
  247. }
  248. }
  249. }
  250. */
  251. setupChart("PV");
  252. // 차트를 로드한다
  253. loadChart(main_chartpath);
  254. }
  255. function fGetResize()
  256. {
  257. var newWidth;
  258. var newHeight;
  259. var obj;
  260. var obj2;
  261. newWidth = this.position.width - 24; // window.width
  262. newHeight = this.position.height - 30;
  263. group1.position2.top = 3;
  264. group1.position2.left = 4;
  265. group1.position2.width = newWidth - 4;
  266. group1.position2.height = 40;
  267. obj = eval("f_View");
  268. obj.position.left = 3;
  269. obj.position.top = 46;
  270. obj.position.width = newWidth - 4;
  271. obj.position.height = newHeight - group1.position.height ;
  272. // this.position.width = newWidth;
  273. // this.position.height = newHeight;
  274. f_View.ViewMode = 0;
  275. /*
  276. newWidth = parseInt(window.width) - 16;
  277. newHeight = parseInt(window.height) - 30;
  278. obj2 = document.body;
  279. obj2.attribute("width") = newWidth;
  280. obj2.attribute("height") = newHeight;
  281. group1.attribute("top") =3;
  282. group1.attribute("left") =3;
  283. group1.attribute("height") = 40;
  284. group1.attribute("width") = obj2.attribute("width")- 6;
  285. obj = document.controls.item("f_View");
  286. obj.attribute("left") = 3;
  287. obj.attribute("top") = 46 ;
  288. obj.attribute("width") = obj2.attribute("width") - 6 ;
  289. obj.attribute("height") = obj2.attribute("height") - group1.attribute("height") - 25;
  290. f_View.ViewMode = 0;
  291. */
  292. }
  293. function setupChart(ViewMode)
  294. {
  295. switch(ViewMode)
  296. {
  297. case "TV":
  298. group1.switch1.tabindex = 1;// model.toggle("case1");
  299. ds_cond.setColumn(0, "radio", "TV");
  300. f_View.ViewMode = 2;
  301. hidden_currentViewMode = "ThumbView";
  302. break;
  303. case "ThumbView":
  304. group1.switch1.tabindex = 1;// model.toggle("case1");
  305. ds_cond.setColumn(0, "radio", "TV");
  306. f_View.ViewMode = 2;
  307. hidden_currentViewMode = "ThumbView";
  308. break;
  309. case "CV":
  310. group1.switch1.tabindex = 2;// model.toggle("case2");
  311. ds_cond.setColumn(0, "radio", "CV");
  312. f_View.ViewMode = 1;
  313. hidden_currentViewMode = "ChartView";
  314. break;
  315. case "ChartView":
  316. group1.switch1.tabindex = 2;// model.toggle("case2");
  317. ds_cond.setColumn(0, "radio", "CV");
  318. f_View.ViewMode = 1;
  319. hidden_currentViewMode = "ChartView";
  320. break;
  321. case "PV":
  322. group1.switch1.tabindex = 0;// model.toggle("case3");
  323. ds_cond.setColumn(0, "radio", "PV");
  324. f_View.ViewMode = 0;
  325. f_View.FitMode = 3;
  326. f_View.PageCurrent = 1;
  327. hidden_currentViewMode = "ChartView";
  328. break;
  329. case "PageView":
  330. group1.switch1.tabindex = 0;// model.toggle("case3");
  331. ds_cond.setColumn(0, "radio", "PV");
  332. f_View.ViewMode = 0;
  333. f_View.FitMode = 3;
  334. f_View.PageCurrent = 1;
  335. hidden_currentViewMode = "ChartView";
  336. break;
  337. }
  338. }
  339. function loadChart(path)
  340. {
  341. var varpath;
  342. varpath = path.split("|");
  343. if (varpath[1] == null)
  344. {
  345. f_View.PageAppend(varpath[0], 1 ,1);
  346. PvFit()
  347. }
  348. else
  349. {
  350. f_View.PageAppend(varpath[0], varpath[1] ,varpath[1]);
  351. PvFit()
  352. }
  353. setupChart("PV");
  354. }
  355. function ImageClick_event(page, shift, button )
  356. {
  357. if(button == 2)
  358. {
  359. f_View.FitMode = 3;
  360. f_View.Refresh();
  361. }
  362. }
  363. function MouseWheel_event(button, shift, zDelta)
  364. {
  365. if(shift == 4 && f_View.ViewMode == 0 && zDelta == 120)
  366. {
  367. f_View.FitMode = 1
  368. f_View.ViewRatio += 0.1
  369. }
  370. else if(shift == 4 && f_View.ViewMode == 0 && zDelta == -120)
  371. {
  372. f_View.FitMode = 1
  373. f_View.ViewRatio -= 0.1
  374. }
  375. else if(shift == 4 && f_View.ViewMode == 2 && zDelta == 120)
  376. {
  377. f_View.ThumbnailWidth += 7;
  378. f_View.ThumbnailHeight += 10;
  379. }
  380. else if(shift == 4 && f_View.ViewMode == 2 && zDelta == -120)
  381. {
  382. f_View.ThumbnailWidth -= 7;
  383. f_View.ThumbnailHeight -= 10;
  384. }
  385. f_View.Refresh();
  386. }
  387. function PvMovePage(Mode)
  388. {
  389. switch(Mode)
  390. {
  391. case "first":
  392. f_View.ActionSingle = 2;
  393. f_View.FitMode = 3;
  394. break;
  395. case "prev":
  396. f_View.ActionSingle = 4;
  397. f_View.FitMode = 3;
  398. break;
  399. case "next":
  400. f_View.ActionSingle = 5;
  401. f_View.FitMode = 3;
  402. break;
  403. case "last":
  404. f_View.ActionSingle = 3;
  405. f_View.FitMode = 3;
  406. break;
  407. }
  408. f_View.Refresh();
  409. }
  410. function PvFit()
  411. {
  412. f_View.FitMode = 3;
  413. f_View.Refresh();
  414. }
  415. function PvTurn(Mode)
  416. {
  417. switch(Mode)
  418. {
  419. case "left":
  420. f_View.ActionSingle = 7;
  421. break;
  422. case "right":
  423. f_View.ActionSingle = 6;
  424. break;
  425. }
  426. f_View.Refresh();
  427. }
  428. function PvMousePage(Mode)
  429. {
  430. switch(Mode)
  431. {
  432. case "normal":
  433. f_View.ActionSingle = 0;
  434. break;
  435. case "panning":
  436. f_View.ActionSingle = 21;
  437. break;
  438. case "zoom":
  439. f_View.ActionSingle = 22;
  440. break;
  441. case "regionzoom":
  442. f_View.ActionSingle = 23;
  443. break;
  444. }
  445. f_View.Refresh();
  446. }
  447. ]]></Script>
  448. </Form>
  449. </FDL>