/* - ======================================================================================= Image EMR Viewer Program (SPMRC03100.js) - Version : 1) : Ver.1.00.00 - ======================================================================================= /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ÃʱâÈ­ ÇÔ¼ö * @return : * @--------------------------------------------------- */ function fInitilize() { // »ç¿ëÇÏ´Â °³Ã¼¸¦ ÃʱâÈ­ ÇÑ´Ù. //window.width = 640; //window.height = 930; var windowleft = 0; var windowtop = 0; var windowcount; var count; window.modelessTopmost = true; windowcount = window.parent.children.length; for(count = 0; count < windowcount; count++) { if (count == 1) { window.parent.children.item(count).left = window.parent.children.item(0).left + window.parent.children.item(0).width; window.parent.children.item(count).top = windowtop; } else { if (count == 0) { window.parent.children.item(count).left = windowleft + (count)*25; window.parent.children.item(count).top = windowtop + (count)*25; } else { window.parent.children.item(count).left = windowleft + (count - 1)*25; window.parent.children.item(count).top = windowtop + (count - 1)*25; } } } fSet_OCX_PageViewer(); // ¸ðµç ¹öư À̹ÌÁö¸¦ ¼³Á¤ÇÑ´Ù. setupAllButtons(); // Åä±Û ¹öưÀÇ ±âº»°ª ¼³Á¤ processToggleButton("btnFitBest"); processToggleButton("btnPageMouseMagnifyingGlass"); // Â÷Æ®¸¦ ·ÎµåÇÑ´Ù loadChart(model.getValue("/root/main/chartpath")); // fitToWindowSize(); } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : PageViewer OCX ÃʱâÈ­ * @return : * @--------------------------------------------------- */ function fSet_OCX_PageViewer() { objPageView.BorderStyle = 1; objPageView.BackColor = 0xffffff;//0xe0e0e0; objPageView.BestFit(); objPageView.HorzAlignMode = 1; objPageView.VertAlignMode = 1; objPageView.MouseMode = 4; objPageView.MagnifyingGlassWidth = 600; objPageView.MagnifyingGlassHeight = 300; objPageView.MagnifyingGlassRatio = 1.0; } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : µî·ÏµÇ¾î ÀÖ´Â ¸ðµç ¹öư À̹ÌÁö¸¦ ¼³Á¤ÇÑ´Ù. * @return : * @--------------------------------------------------- */ function setupAllButtons() { var node = instance1.selectSingleNode(getXPathButtonImage()); var list = node.childNodes; var total = list.length; var i; for (i = 0; i < total; i++) { setupButton( list.item(i).nodeName ); } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : XPath·Î ºÎÅÍ Button image Load * @return : * @--------------------------------------------------- */ function getXPathButtonImage(button) { return button == null ? "/root/hidden/buttonImage" : "/root/hidden/buttonImage/" + button; } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ¹öưÀÇ ÇöÀç »óȲ¿¡ ¸Â°Ô À̹ÌÁö¸¦ ¼³Á¤ÇÑ´Ù. * @return : * @--------------------------------------------------- */ function setupButton(button) { var path = model.getValue("/root/hidden/buttonImageHome") + model.getValue(getXPathButtonImage(button)); var ext = model.getValue("/root/hidden/buttonImageExt"); var objButton = document.controls.item(button); // ¹öư »óÅ¿¡ µû¶ó À̹ÌÁö ¼³Á¤ if(toggleButton(button, "value") == "1") { objButton.attribute("background-image") = path + "_c" + ext; objButton.attribute("down.background-image") = path + "_c" + ext; objButton.attribute("hover.background-image") = path + "_c" + ext; objButton.attribute("disable.background-image") = path + "_d" + ext; } else { objButton.attribute("background-image") = path + ext; objButton.attribute("down.background-image") = path + "_c" + ext; objButton.attribute("hover.background-image") = path + "_h" + ext; objButton.attribute("disable.background-image") = path + "_d" + ext; } // disable ó¸® var btnDis = toggleButton(button, "disable") == "1" ? true : false; objButton.disabled = btnDis; // ¹öưÀ» È­¸é¿¡ °»½Å objButton.refresh(); } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : Åä±Û ¹öưÀÇ ¼Ó¼ºÀ» ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù. * @return : * @--------------------------------------------------- */ function toggleButton(button, property, value) { if (button == null || property == null) return; var path = getXPathToggleButton(button) + "/" + property; if (value == null) { return model.getValue(path); } else { if (model.getValue(path) != value) { model.setValue(path, value); setupButton(button); } } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : XPath·Î ºÎÅÍ ToggleButton image Load * @return : * @--------------------------------------------------- */ function getXPathToggleButton(button) { return button == null ? "/root/hidden/buttonToggle" : "/root/hidden/buttonToggle/" + button; } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : Åä±Û ¹öưÀ» ó¸®ÇÑ´Ù. * @return : * @--------------------------------------------------- */ function processToggleButton(button) { var node = instance1.selectSingleNode(getXPathToggleButton()); var list = node.childNodes; var total = list.length; var curName; var name; var i; // ÀÌ¹Ì ÄÑÁ® ÀÖ´Ù¸é 󸮰¡ ÇÊ¿ä ¾øÀ½ if(toggleButton(button, "value") == "1") return; // ¿µ¿ªÈ®´ë, È®´ë, Ãà¼Ò ¹öưÀÏ °æ¿ì ½ÇÁ¦Å©±âº¸±â, ÃÖÀûÅ©±âº¸±â, °¡·ÎÅ©±âº¸±â ¹öư ²û if(button == "btnPageMouseRegionZoom" || button == "btnZoomIn" || button == "btnZoomOut") { if(toggleButton("btnFitBest", "value") == "1") { toggleButton("btnFitBest", "value", "0"); } if(toggleButton("btnFitActual", "value") == "1") { toggleButton("btnFitActual", "value", "0"); } if(toggleButton("btnFitWidth", "value") == "1") { toggleButton("btnFitWidth", "value", "0"); } } // È®´ë, Ãà¼Ò ¹öưÀÇ °æ¿ì Àǹ̾øÀ½ if(button == "btnZoomIn" || button == "btnZoomOut") return; curName = toggleButton(button, "name"); for (i = 0; i < total; i++) { name = list.item(i).nodeName; if(toggleButton(name, "name") == curName && toggleButton(name, "value") == "1") { toggleButton(name, "value", "0"); // Çڵ鷯 È£Ãâ eval(name + "_Changed()"); } } toggleButton(button, "value", "1"); // Çڵ鷯 È£Ãâ eval(button + "_Changed()"); } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : Åä±Û ¹öưÀ» ó¸®ÇÑ´Ù. * @return : * @--------------------------------------------------- */ function loadChart(path) { objPageView.load(path, 1); objPageView.BestFit(); } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ½ÇÁ¦ Å©±â ¸ÂÃ߱⠹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnFitActual_Changed() { if(getToggleValue("ModeFit") == "btnFitActual") { objPageView.ActualSize(); processToggleButton("btnPageMousePanning"); } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ÃÖÀû Å©±â ¸ÂÃ߱⠹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnFitBest_Changed() { if(getToggleValue("ModeFit") == "btnFitBest") { objPageView.BestFit(); processToggleButton("btnPageMouseMagnifyingGlass"); } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : °¡·Î Å©±â ¸ÂÃ߱⠹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnFitWidth_Changed() { if(getToggleValue("ModeFit") == "btnFitWidth") { objPageView.FitToWidth(); processToggleButton("btnPageMousePanning"); } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ÀÏ¹Ý ¸¶¿ì½º Ä¿¼­ ¹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnPageMouseNormal_Changed() { if(getToggleValue("ModePageMouse") == "btnPageMouseNormal") { objPageView.MouseMode = 0; } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ¿µ¿ª È®´ë ¸¶¿ì½º Ä¿¼­ ¹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnPageMouseRegionZoom_Changed() { if(getToggleValue("ModePageMouse") == "btnPageMouseRegionZoom") { objPageView.MouseMode = 2; } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : µ¸º¸±â ¸¶¿ì½º Ä¿¼­ ¹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnPageMouseMagnifyingGlass_Changed() { if(getToggleValue("ModePageMouse") == "btnPageMouseMagnifyingGlass") { objPageView.MouseMode = 4; } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : ²ø±â ¸¶¿ì½º Ä¿¼­ ¹öư Çڵ鷯 * @return : * @--------------------------------------------------- */ function btnPageMousePanning_Changed() { if(getToggleValue("ModePageMouse") == "btnPageMousePanning") { objPageView.MouseMode = 1; } } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : Åä±Û ¹öư ±×·ì¿¡¼­ ´­·ÁÁ® ÀÖ´Â ¹öư À̸§À» ¹ÝȯÇÑ´Ù. * @return : * @--------------------------------------------------- */ function getToggleValue(group) { var node = instance1.selectSingleNode( getXPathToggleButton() ); var list = node.childNodes; var total = list.length; var name; var i; for(i = 0; i < total; i++) { name = list.item(i).nodeName; if(toggleButton(name, "name") == group && toggleButton(name, "value") == "1") { return name; } } return ""; } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : È­¸é »çÀÌÁ Â÷Æ® Å©±â¿¡ ÃÖÀûÈ­ * @return : * @--------------------------------------------------- */ function fitToWindowSize() { var obj; obj = document.controls.item("objPageView"); // objPageViewÀÇ À̹ÌÁö Å©±â »êÃâ //var imgwidth = obj.ImageWidth; //var imgheight = obj.ImageHeight; var imgwidth = objPageView.ImageWidth; var imgheight = objPageView.ImageHeight; alert("imgwidth : " + imgwidth); alert("objwidth : " + obj.attribute("width")); alert("imgheight : " + imgheight); alert("objheight : " + obj.attribute("height")); } /** * @group : * @ver : 2007.05.21 * @by : ±èÀçÈ« * @--------------------------------------------------- * @type : function * @access : public * @desc : À̹ÌÁöÆÄÀÏ ´Ù¿î·Îµå * @return : * @--------------------------------------------------- */ function downloadFile() { var strpath = ""; var fso; var count; var downloadcount = 1; fso = new ActiveXObject("Scripting.FileSystemObject"); if (objThumbView.TotalSelectedThumbnail == 0) { return; } strpath = window.folderDialog("Choose a folder to save Image"); if (strpath == "") { return; } for (count = 1; count <= objThumbView.TotalThumbnail; count++) { if (objThumbView.Select(count) == true) { alert(objThumbView.FileName(count)); alert(objThumbView.ThumbText(count)); // fso.CopyFile(model.getValue("/root/main/chartpath"), strpath + "/" + objThumbView.ThumbText(count) + "_" + downloadcount + ".jpg", true); fso.CopyFile(model.getValue("/root/main/chartpath"), strpath + "/ComparePageMode_" + downloadcount + ".jpg", true); downloadcount++; } } }