SPMRC03100.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  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" position="absolute 0 2 0 2"/>
  8. <Div id="group1" taborder="3" style="background:#99ccffff;border:1 none #ccffffff #ccffffff;" position="absolute 3 3 652 43" anchor="left top right">
  9. <Layouts>
  10. <Layout>
  11. <Tab id="switch1" taborder="0" tabindex="0" position="absolute 0 -11 415 35" style="buttonbackground:transparent;background:transparent;" anchor="left top right">
  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 2 40 32" tooltiptext="처음페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_first.png') center middle;" anchor="default"/>
  17. <Button id="button2" taborder="13" ondblclick="group1_switch1_case3_button2_ondblclick" onclick="group1_switch1_case3_button2_onclick" position="absolute 40 2 70 32" tooltiptext="이전페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_prev.png') center middle;" anchor="default"/>
  18. <Button id="button3" taborder="14" ondblclick="group1_switch1_case3_button3_ondblclick" onclick="group1_switch1_case3_button3_onclick" position="absolute 70 2 100 32" tooltiptext="다음페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_next.png') center middle;" anchor="default"/>
  19. <Button id="button4" taborder="15" ondblclick="group1_switch1_case3_button4_ondblclick" onclick="group1_switch1_case3_button4_onclick" position="absolute 100 2 130 32" tooltiptext="마지막페이지" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\arrow_last.png') center middle;" anchor="default"/>
  20. <Button id="button5" taborder="16" ondblclick="group1_switch1_case3_button5_ondblclick" onclick="group1_switch1_case3_button5_onclick" position="absolute 140 2 170 32" tooltiptext="마우스모드기본" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_none.png') center middle;" anchor="default"/>
  21. <Button id="button6" taborder="17" ondblclick="group1_switch1_case3_button6_ondblclick" onclick="group1_switch1_case3_button6_onclick" position="absolute 170 2 200 32" tooltiptext="마우스모드끌기" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_panning.png') center middle;" anchor="default"/>
  22. <Button id="button7" taborder="18" ondblclick="group1_switch1_case3_button7_ondblclick" onclick="group1_switch1_case3_button7_onclick" position="absolute 200 2 230 32" tooltiptext="마우스모드확대" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_zoom.png') center middle;" anchor="default"/>
  23. <Button id="but_regionzoom" taborder="19" ondblclick="group1_switch1_case3_but_regionzoom_ondblclick" onclick="group1_switch1_case3_but_regionzoom_onclick" position="absolute 230 2 260 32" tooltiptext="마우스모드드래그확대" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\m_ratio.png') center middle;" anchor="default"/>
  24. <Button id="but_fit" taborder="20" ondblclick="group1_switch1_case3_but_fit_ondblclick" onclick="group1_switch1_case3_but_fit_onclick" position="absolute 270 2 300 32" tooltiptext="이미지화면에 맞추기" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\bestfit.png') center middle;" anchor="default"/>
  25. <Button id="but_leftturn" taborder="21" ondblclick="group1_switch1_case3_but_leftturn_ondblclick" onclick="group1_switch1_case3_but_leftturn_onclick" position="absolute 310 2 340 32" tooltiptext="이미지 왼쪽90도 회전" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\turn_left.png') center middle;" anchor="default"/>
  26. <Button id="but_rightturn" taborder="22" ondblclick="group1_switch1_case3_but_rightturn_ondblclick" onclick="group1_switch1_case3_but_rightturn_onclick" position="absolute 340 2 370 32" tooltiptext="이미지 오른쪽90도 회전" style="background:#ffffffff URL('..\..\..\IMAGES\emr\MR\turn_right.png') center middle;" anchor="default"/>
  27. </Layout>
  28. </Layouts>
  29. </Tabpage>
  30. </Tabpages>
  31. </Tab>
  32. </Layout>
  33. </Layouts>
  34. </Div>
  35. <ActiveX id="f_View" position="absolute 4 47 651 972" 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. frmf_setFocus(true);
  225. /*
  226. window.modelessTopmost = true;
  227. windowcount = window.parent.children.length;
  228. for(count = 0; count < windowcount; count++)
  229. {
  230. if (count == 1)
  231. {
  232. window.parent.children.item(count).left = window.parent.children.item(0).left + window.parent.children.item(0).width;
  233. window.parent.children.item(count).top = windowtop;
  234. }
  235. else
  236. {
  237. if (count == 0)
  238. {
  239. window.parent.children.item(count).left = windowleft + (count)*25;
  240. window.parent.children.item(count).top = windowtop + (count)*25;
  241. }
  242. else
  243. {
  244. window.parent.children.item(count).left = windowleft + (count - 1)*25;
  245. window.parent.children.item(count).top = windowtop + (count - 1)*25;
  246. }
  247. }
  248. }
  249. */
  250. setupChart("PV");
  251. // 차트를 로드한다
  252. loadChart(main_chartpath);
  253. }
  254. function fGetResize()
  255. {
  256. var newWidth;
  257. var newHeight;
  258. var obj;
  259. var obj2;
  260. newWidth = this.position.width - 24; // window.width
  261. newHeight = this.position.height - 30;
  262. group1.position.top = 3;
  263. group1.position.left = 3;
  264. group1.position.width = newWidth - 4;
  265. group1.position.height = 40;
  266. obj = eval("f_View");
  267. obj.position.left = 3;
  268. obj.position.top = 46;
  269. obj.position.width = newWidth - 4;
  270. obj.position.height = newHeight - group1.position.height ;
  271. // this.position.width = newWidth;
  272. // this.position.height = newHeight;
  273. f_View.ViewMode = 0;
  274. /*
  275. newWidth = parseInt(window.width) - 16;
  276. newHeight = parseInt(window.height) - 30;
  277. obj2 = document.body;
  278. obj2.attribute("width") = newWidth;
  279. obj2.attribute("height") = newHeight;
  280. group1.attribute("top") =3;
  281. group1.attribute("left") =3;
  282. group1.attribute("height") = 40;
  283. group1.attribute("width") = obj2.attribute("width")- 6;
  284. obj = document.controls.item("f_View");
  285. obj.attribute("left") = 3;
  286. obj.attribute("top") = 46 ;
  287. obj.attribute("width") = obj2.attribute("width") - 6 ;
  288. obj.attribute("height") = obj2.attribute("height") - group1.attribute("height") - 25;
  289. f_View.ViewMode = 0;
  290. */
  291. }
  292. function setupChart(ViewMode)
  293. {
  294. switch(ViewMode)
  295. {
  296. case "TV":
  297. group1.switch1.tabindex = 1;// model.toggle("case1");
  298. ds_cond.setColumn(0, "radio", "TV");
  299. f_View.ViewMode = 2;
  300. hidden_currentViewMode = "ThumbView";
  301. break;
  302. case "ThumbView":
  303. group1.switch1.tabindex = 1;// model.toggle("case1");
  304. ds_cond.setColumn(0, "radio", "TV");
  305. f_View.ViewMode = 2;
  306. hidden_currentViewMode = "ThumbView";
  307. break;
  308. case "CV":
  309. group1.switch1.tabindex = 2;// model.toggle("case2");
  310. ds_cond.setColumn(0, "radio", "CV");
  311. f_View.ViewMode = 1;
  312. hidden_currentViewMode = "ChartView";
  313. break;
  314. case "ChartView":
  315. group1.switch1.tabindex = 2;// model.toggle("case2");
  316. ds_cond.setColumn(0, "radio", "CV");
  317. f_View.ViewMode = 1;
  318. hidden_currentViewMode = "ChartView";
  319. break;
  320. case "PV":
  321. group1.switch1.tabindex = 0;// model.toggle("case3");
  322. ds_cond.setColumn(0, "radio", "PV");
  323. f_View.ViewMode = 0;
  324. f_View.FitMode = 3;
  325. f_View.PageCurrent = 1;
  326. hidden_currentViewMode = "ChartView";
  327. break;
  328. case "PageView":
  329. group1.switch1.tabindex = 0;// model.toggle("case3");
  330. ds_cond.setColumn(0, "radio", "PV");
  331. f_View.ViewMode = 0;
  332. f_View.FitMode = 3;
  333. f_View.PageCurrent = 1;
  334. hidden_currentViewMode = "ChartView";
  335. break;
  336. }
  337. }
  338. function loadChart(path)
  339. {
  340. var varpath;
  341. varpath = path.split("|");
  342. if (varpath[1] == null)
  343. {
  344. f_View.PageAppend(varpath[0], 1 ,1);
  345. PvFit()
  346. }
  347. else
  348. {
  349. f_View.PageAppend(varpath[0], varpath[1] ,varpath[1]);
  350. PvFit()
  351. }
  352. setupChart("PV");
  353. }
  354. function ImageClick_event(page, shift, button )
  355. {
  356. if(button == 2)
  357. {
  358. f_View.FitMode = 3;
  359. f_View.Refresh();
  360. }
  361. }
  362. function MouseWheel_event(button, shift, zDelta)
  363. {
  364. if(shift == 4 && f_View.ViewMode == 0 && zDelta == 120)
  365. {
  366. f_View.FitMode = 1
  367. f_View.ViewRatio += 0.1
  368. }
  369. else if(shift == 4 && f_View.ViewMode == 0 && zDelta == -120)
  370. {
  371. f_View.FitMode = 1
  372. f_View.ViewRatio -= 0.1
  373. }
  374. else if(shift == 4 && f_View.ViewMode == 2 && zDelta == 120)
  375. {
  376. f_View.ThumbnailWidth += 7;
  377. f_View.ThumbnailHeight += 10;
  378. }
  379. else if(shift == 4 && f_View.ViewMode == 2 && zDelta == -120)
  380. {
  381. f_View.ThumbnailWidth -= 7;
  382. f_View.ThumbnailHeight -= 10;
  383. }
  384. f_View.Refresh();
  385. }
  386. function PvMovePage(Mode)
  387. {
  388. switch(Mode)
  389. {
  390. case "first":
  391. f_View.ActionSingle = 2;
  392. f_View.FitMode = 3;
  393. break;
  394. case "prev":
  395. f_View.ActionSingle = 4;
  396. f_View.FitMode = 3;
  397. break;
  398. case "next":
  399. f_View.ActionSingle = 5;
  400. f_View.FitMode = 3;
  401. break;
  402. case "last":
  403. f_View.ActionSingle = 3;
  404. f_View.FitMode = 3;
  405. break;
  406. }
  407. f_View.Refresh();
  408. }
  409. function PvFit()
  410. {
  411. f_View.FitMode = 3;
  412. f_View.Refresh();
  413. }
  414. function PvTurn(Mode)
  415. {
  416. switch(Mode)
  417. {
  418. case "left":
  419. f_View.ActionSingle = 7;
  420. break;
  421. case "right":
  422. f_View.ActionSingle = 6;
  423. break;
  424. }
  425. f_View.Refresh();
  426. }
  427. function PvMousePage(Mode)
  428. {
  429. switch(Mode)
  430. {
  431. case "normal":
  432. f_View.ActionSingle = 0;
  433. break;
  434. case "panning":
  435. f_View.ActionSingle = 21;
  436. break;
  437. case "zoom":
  438. f_View.ActionSingle = 22;
  439. break;
  440. case "regionzoom":
  441. f_View.ActionSingle = 23;
  442. break;
  443. }
  444. f_View.Refresh();
  445. }
  446. ]]></Script>
  447. </Form>
  448. </FDL>