mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-07 02:31:40 +09:00
rollback r10320, r10298, r10276, r10272
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@10318 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
f8dd9888f6
commit
206ded7cf9
149 changed files with 3745 additions and 2812 deletions
|
|
@ -17,6 +17,14 @@ function getStyle(obj) {
|
|||
return style;
|
||||
}
|
||||
|
||||
// float: 값을 구하는게 IE랑 그외가 다름
|
||||
function getFloat(obj) {
|
||||
return jQuery(obj).css('float');
|
||||
}
|
||||
function setFloat(obj, fl) {
|
||||
jQuery(obj).css('float', fl);
|
||||
}
|
||||
|
||||
// padding값을 구하는 함수 (없을 경우 0으로 세팅), zbxe의 위젯에서만 사용
|
||||
function getPadding(obj, direct) {
|
||||
var padding = obj.getAttribute("widget_padding_"+direct);
|
||||
|
|
@ -33,13 +41,17 @@ function doStartPageModify(zoneID, module_srl) {
|
|||
zoneModuleSrl = module_srl;
|
||||
|
||||
// 위젯 크기/여백 조절 레이어를 가장 밖으로 뺌
|
||||
jQuery('#wgCSS')
|
||||
jQuery('#tmpPageSizeLayer')
|
||||
.attr('id', 'pageSizeLayer')
|
||||
.css({position:'absolute',left:0,top:0})
|
||||
.hide()
|
||||
.appendTo('body')
|
||||
.find('>form')
|
||||
.submit(function(){ doApplyWidgetSize(this); return false; });
|
||||
|
||||
|
||||
// 모든 위젯들의 크기를 정해진 크기로 맞춤
|
||||
doFitBorderSize();
|
||||
|
||||
// 드래그와 리사이즈와 관련된 이벤트 리스너 생성
|
||||
xAddEventListener(document,"click",doCheckWidget);
|
||||
xAddEventListener(document,"mousedown",doCheckWidgetDrag);
|
||||
|
|
@ -50,7 +62,7 @@ function doStartPageModify(zoneID, module_srl) {
|
|||
// 내용 모두 삭제
|
||||
function removeAllWidget() {
|
||||
if(!confirm(confirm_delete_msg)) return;
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
jQuery(zonePageObj).html('');
|
||||
}
|
||||
|
||||
|
|
@ -62,7 +74,7 @@ function getWidgetContent(obj) {
|
|||
if(typeof(obj)=='undefined' || !obj) obj = zonePageObj;
|
||||
|
||||
var widget = null;
|
||||
jQuery('div.wgWrap',obj).each(function(){
|
||||
jQuery('div.widgetOutput',obj).each(function(){
|
||||
if(jQuery(this).parent().get(0) != obj) return;
|
||||
widget = jQuery(this).attr('widget');
|
||||
switch(widget) {
|
||||
|
|
@ -201,6 +213,9 @@ function doSyncPageContent() {
|
|||
}
|
||||
|
||||
if(typeof(editorStart)!='undefined') editorStart(1, "module_srl", "content", false, 400 );
|
||||
//editor_upload_start(1);
|
||||
|
||||
//setFixedPopupSize();
|
||||
}
|
||||
|
||||
// 부모창에 위젯을 추가
|
||||
|
|
@ -237,19 +252,20 @@ function addContentWidget(fo_obj) {
|
|||
if(!ret_obj || ret_obj.error != '0') return;
|
||||
|
||||
var document_srl = ret_obj.document_srl;
|
||||
var contentWidget = opener.jQuery('div.wgWrap[widget=widgetContent][document_srl='+document_srl+']'), attr = [];
|
||||
var contentWidget = opener.jQuery('div.widgetOutput[widget=widgetContent][document_srl='+document_srl+']'), attr = [];
|
||||
|
||||
if(contentWidget.size() > 0) {
|
||||
attr = contentWidget.get(0).attributes;
|
||||
}
|
||||
|
||||
var tpl = ''+
|
||||
'<div class="wgWrap" style="width:100px;height:100px;'+fo_obj.style.value+'" widget_padding_left="'+fo_obj.widget_padding_left.value+'" widget_padding_right="'+fo_obj.widget_padding_right.value+'" widget_padding_top="'+fo_obj.widget_padding_top.value+'" widget_padding_bottom="'+fo_obj.widget_padding_bottom.value+'" document_srl="'+document_srl+'" widget="widgetContent">'+
|
||||
'<button type="button" class="wgRight"></button>'+
|
||||
'<div class="wgBorder">'+
|
||||
'<div class="widgetOutput" style="'+fo_obj.style.value+'" widget_padding_left="'+fo_obj.widget_padding_left.value+'" widget_padding_right="'+fo_obj.widget_padding_right.value+'" widget_padding_top="'+fo_obj.widget_padding_top.value+'" widget_padding_bottom="'+fo_obj.widget_padding_bottom.value+'" document_srl="'+document_srl+'" widget="widgetContent">'+
|
||||
'<button type="button" class="widgetResize"></button>'+
|
||||
'<button type="button" class="widgetResizeLeft"></button>'+
|
||||
'<div class="widgetBorder">'+
|
||||
'<div style="padding:'+fo_obj.widget_padding_top.value+'px '+fo_obj.widget_padding_right.value+'px'+fo_obj.widget_padding_bottom.value+'px'+fo_obj.widget_padding_left.value+'px"></div>'+content+
|
||||
'</div>'+
|
||||
'<div class="widgetContent" style="display:none"></div>'+
|
||||
'<div class="widgetContent" style="display:none;width:1px;height:1px;overflow:hidden;"></div>'+
|
||||
'</div>';
|
||||
|
||||
var $tpl = jQuery(tpl);
|
||||
|
|
@ -270,13 +286,15 @@ function addContentWidget(fo_obj) {
|
|||
/* 박스 위젯 추가 */
|
||||
function doAddWidgetBox() {
|
||||
var tpl = ''+
|
||||
'<div class="wgWrap" widget="widgetBox" style="width:100px;height:100px">'+
|
||||
'<button type="button" class="wgBoxRight"></button>'+
|
||||
'<div class="wgBoxBorder">'+
|
||||
'<div class="nullWidget"></div>'+
|
||||
'<div class="widgetOutput" style="float:left;width:100%;height:20px;" widget="widgetBox" >'+
|
||||
'<button type="button" class="widgetBoxResize"></button>'+
|
||||
'<button type="button" class="widgetBoxResizeLeft"></button>'+
|
||||
'<div class="widgetBoxBorder">'+
|
||||
'<div class="nullWidget" style="width:100%;height:100px;"></div>'+
|
||||
'</div>'+
|
||||
'</div>';
|
||||
zonePageObj.innerHTML += tpl;
|
||||
doFitBorderSize();
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -291,6 +309,26 @@ function doAddWidget(fo) {
|
|||
popopen(url,'GenerateWidgetCode');
|
||||
}
|
||||
|
||||
|
||||
|
||||
// widgetBorder에 height를 widgetOutput와 맞춰줌
|
||||
function doFitBorderSize() {
|
||||
var obj_list = jQuery('.widgetBorer', zonePageObj).get();
|
||||
for(var i=0;i<obj_list.length;i++) {
|
||||
var obj = obj_list[i];
|
||||
var height = xHeight(obj.parentNode);
|
||||
if(height<3) height = 20;
|
||||
xHeight(obj, height);
|
||||
obj.parentNode.style.clear = '';
|
||||
}
|
||||
var obj_list = jQuery('.widgetBoxBorder', zonePageObj).get();
|
||||
for(var i=0;i<obj_list.length;i++) {
|
||||
var obj = obj_list[i];
|
||||
xHeight(obj, xHeight(obj.parentNode));
|
||||
obj.parentNode.style.clear = '';
|
||||
}
|
||||
}
|
||||
|
||||
var selectedWidget = null;
|
||||
var writedText = null;
|
||||
var checkDocumentWrite = false;
|
||||
|
|
@ -319,7 +357,7 @@ window.document.write = window.document.writeln = function(str){
|
|||
|
||||
// 위젯 추가
|
||||
function doAddWidgetCode(widget_code) {
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
|
||||
// css 추가
|
||||
var tmp = widget_code;
|
||||
|
|
@ -387,11 +425,24 @@ function doAddWidgetCode(widget_code) {
|
|||
selectedWidget.parentNode.insertBefore(obj, selectedWidget);
|
||||
selectedWidget.parentNode.removeChild(selectedWidget);
|
||||
} else {
|
||||
get_by_id('wgArea').appendChild(obj);
|
||||
get_by_id('zonePageContent').appendChild(obj);
|
||||
}
|
||||
checkDocumentWrite = false;
|
||||
selectedWidget = null;
|
||||
|
||||
/*
|
||||
//zoneObj.style.visibility = 'hidden';
|
||||
zoneObj.style.opacity = 0.2;
|
||||
zoneObj.style.filter = "alpha(opacity=20)";
|
||||
|
||||
// 위젯 추가후 페이지 리로딩
|
||||
var tpl = getWidgetContent();
|
||||
|
||||
var fo_obj = get_by_id('pageFo');
|
||||
fo_obj.content.value = tpl;
|
||||
fo_obj.mid.value = current_mid;
|
||||
fo_obj.submit();
|
||||
*/
|
||||
}
|
||||
|
||||
// 클릭 이벤트시 위젯의 수정/제거/이벤트 무효화 처리
|
||||
|
|
@ -403,13 +454,13 @@ function doCheckWidget(e) {
|
|||
|
||||
var pObj = obj.parentNode;
|
||||
while(pObj) {
|
||||
if(pObj.id == "wgCSS") return;
|
||||
if(pObj.id == "pageSizeLayer") return;
|
||||
pObj = pObj.parentNode;
|
||||
}
|
||||
|
||||
doHideWidgetSizeSetup();
|
||||
// 위젯 설정
|
||||
if(obj.className == 'wgSetup') {
|
||||
if(obj.className == 'widgetSetup') {
|
||||
var p_obj = obj.parentNode.parentNode;
|
||||
var widget = p_obj.getAttribute("widget");
|
||||
if(!widget) return;
|
||||
|
|
@ -419,7 +470,7 @@ function doCheckWidget(e) {
|
|||
return;
|
||||
|
||||
// 위젯 스타일
|
||||
} else if(obj.className == 'wgStyle') {
|
||||
} else if(obj.className == 'widgetStyle') {
|
||||
var p_obj = obj.parentNode.parentNode;
|
||||
var widget = p_obj.getAttribute("widget");
|
||||
var widgetstyle = p_obj.getAttribute("widgetstyle");
|
||||
|
|
@ -429,9 +480,9 @@ function doCheckWidget(e) {
|
|||
return;
|
||||
|
||||
// 위젯 복사
|
||||
} else if(obj.className == 'wgCopy' && obj.parentNode.parentNode.className == 'wgWrap') {
|
||||
} else if(obj.className == 'widgetCopy' && obj.parentNode.parentNode.className == 'widgetOutput') {
|
||||
p_obj = obj.parentNode.parentNode;
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
|
||||
if(p_obj.getAttribute('widget')=='widgetContent' && p_obj.getAttribute('document_srl') ) {
|
||||
var response_tags = new Array('error','message','document_srl');
|
||||
|
|
@ -444,7 +495,7 @@ function doCheckWidget(e) {
|
|||
xInnerHtml(dummy,xInnerHtml(p_obj));
|
||||
|
||||
dummy.widget_sequence = '';
|
||||
dummy.className = "wgWrap";
|
||||
dummy.className = "widgetOutput";
|
||||
for(var i=0;i<p_obj.attributes.length;i++) {
|
||||
if(!p_obj.attributes[i].nodeName || !p_obj.attributes[i].nodeValue) continue;
|
||||
var name = p_obj.attributes[i].nodeName.toLowerCase();
|
||||
|
|
@ -463,7 +514,7 @@ function doCheckWidget(e) {
|
|||
return;
|
||||
|
||||
// 위젯 사이트/ 여백 조절
|
||||
} else if(obj.className == 'wgSize' || obj.className == 'wgBoxSize') {
|
||||
} else if(obj.className == 'widgetSize' || obj.className == 'widgetBoxSize') {
|
||||
var p_obj = obj.parentNode.parentNode;
|
||||
var widget = p_obj.getAttribute("widget");
|
||||
if(!widget) return;
|
||||
|
|
@ -472,11 +523,11 @@ function doCheckWidget(e) {
|
|||
return;
|
||||
|
||||
// 위젯 제거
|
||||
} else if(obj.className == 'wgRemove' || obj.className == 'wgBoxRemove') {
|
||||
} else if(obj.className == 'widgetRemove' || obj.className == 'widgetBoxRemove') {
|
||||
var p_obj = obj.parentNode.parentNode;
|
||||
var widget = p_obj.getAttribute("widget");
|
||||
if(confirm(confirm_delete_msg)) {
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
p_obj.parentNode.removeChild(p_obj);
|
||||
}
|
||||
return;
|
||||
|
|
@ -485,7 +536,7 @@ function doCheckWidget(e) {
|
|||
// 내용 클릭 무효화
|
||||
var p_obj = obj;
|
||||
while(p_obj) {
|
||||
if(p_obj.className == 'wgWrap') {
|
||||
if(p_obj.className == 'widgetOutput') {
|
||||
evt.cancelBubble = true;
|
||||
evt.returnValue = false;
|
||||
xPreventDefault(e);
|
||||
|
|
@ -504,7 +555,7 @@ function completeCopyWidgetContent(ret_obj, response_tags, params, p_obj) {
|
|||
|
||||
|
||||
dummy.widget_sequence = '';
|
||||
dummy.className = "wgWrap";
|
||||
dummy.className = "widgetOutput";
|
||||
for(var i=0;i<p_obj.attributes.length;i++) {
|
||||
if(!p_obj.attributes[i].nodeName || !p_obj.attributes[i].nodeValue) continue;
|
||||
var name = p_obj.attributes[i].nodeName.toLowerCase();
|
||||
|
|
@ -524,7 +575,7 @@ function completeCopyWidgetContent(ret_obj, response_tags, params, p_obj) {
|
|||
|
||||
// content widget 제거
|
||||
function completeDeleteWidgetContent(ret_obj, response_tags, params, p_obj) {
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
p_obj.parentNode.removeChild(p_obj);
|
||||
}
|
||||
|
||||
|
|
@ -534,15 +585,15 @@ function doCheckWidgetDrag(e) {
|
|||
var evt = new xEvent(e); if(!evt.target) return;
|
||||
var obj = evt.target;
|
||||
|
||||
if(jQuery(obj).parents('#wgCSS').size() > 0) return;
|
||||
if(jQuery(obj).parents('#pageSizeLayer').size() > 0) return;
|
||||
|
||||
doHideWidgetSizeSetup();
|
||||
|
||||
if(obj.className == 'wgSetup' || obj.className == 'wgStyle' || obj.className == 'wgCopy' || obj.className == 'wgBoxCopy' || obj.className == 'wgSize' || obj.className == 'wgBoxSize' || obj.className == 'wgRemove' || obj.className == 'wgBoxRemove') return;
|
||||
if(obj.className == 'widgetSetup' || obj.className == 'widgetStyle' || obj.className == 'widgetCopy' || obj.className == 'widgetBoxCopy' || obj.className == 'widgetSize' || obj.className == 'widgetBoxSize' || obj.className == 'widgetRemove' || obj.className == 'widgetBoxRemove') return;
|
||||
|
||||
p_obj = obj;
|
||||
while(p_obj) {
|
||||
if(p_obj.className == 'wgWrap' || p_obj.className == 'wgRight' || p_obj.className == 'wgBoxRight') {
|
||||
if(p_obj.className == 'widgetOutput' || p_obj.className == 'widgetResize' || p_obj.className == 'widgetResizeLeft' || p_obj.className == 'widgetBoxResize' || p_obj.className == 'widgetBoxResizeLeft') {
|
||||
widgetDragEnable(p_obj, widgetDragStart, widgetDrag, widgetDragEnd);
|
||||
widgetMouseDown(e);
|
||||
return;
|
||||
|
|
@ -560,7 +611,7 @@ function _getInt(val) {
|
|||
// 위젯 크기 조절 레이어를 보여줌
|
||||
var selectedSizeWidget = null;
|
||||
function doShowWidgetSizeSetup(px, py, obj) {
|
||||
var layer = jQuery('#wgCSS');
|
||||
var layer = jQuery('#pageSizeLayer');
|
||||
var form = layer.find('>form:first');
|
||||
var obj = jQuery(obj);
|
||||
|
||||
|
|
@ -569,6 +620,8 @@ function doShowWidgetSizeSetup(px, py, obj) {
|
|||
selectedSizeWidget = obj[0];
|
||||
|
||||
var opts = {
|
||||
widget_align : obj.css('float'),
|
||||
|
||||
width : obj[0].style.width,
|
||||
height : obj[0].style.height,
|
||||
|
||||
|
|
@ -639,7 +692,10 @@ function doShowWidgetSizeSetup(px, py, obj) {
|
|||
}
|
||||
|
||||
function doHideWidgetSizeSetup() {
|
||||
jQuery('#wgCSS').hide();
|
||||
jQuery('#pageSizeLayer').hide();
|
||||
//var layer = get_by_id("pageSizeLayer");
|
||||
//layer.style.visibility = "hidden";
|
||||
//layer.style.display = "none";
|
||||
}
|
||||
|
||||
function _getSize(value) {
|
||||
|
|
@ -676,6 +732,9 @@ function _getBGColorStyle(fld_color) {
|
|||
|
||||
function doApplyWidgetSize(fo_obj) {
|
||||
if(selectedSizeWidget) {
|
||||
if(fo_obj.widget_align.selectedIndex == 1) setFloat(selectedSizeWidget, 'right');
|
||||
else setFloat(selectedSizeWidget, 'left');
|
||||
|
||||
var width = _getSize(fo_obj.width.value);
|
||||
if(width) selectedSizeWidget.style.width = width;
|
||||
|
||||
|
|
@ -683,9 +742,9 @@ function doApplyWidgetSize(fo_obj) {
|
|||
if(height && height != "100%") selectedSizeWidget.style.height = height;
|
||||
else {
|
||||
selectedSizeWidget.style.height = '';
|
||||
var wgBorder = xGetElementsByClassName('wgBorder',selectedSizeWidget);
|
||||
for(var i=0;i<wgBorder.length;i++) {
|
||||
var obj = wgBorder[i];
|
||||
var widgetBorder = xGetElementsByClassName('widgetBorder',selectedSizeWidget);
|
||||
for(var i=0;i<widgetBorder.length;i++) {
|
||||
var obj = widgetBorder[i];
|
||||
obj.style.height = '';
|
||||
}
|
||||
}
|
||||
|
|
@ -718,7 +777,7 @@ function doApplyWidgetSize(fo_obj) {
|
|||
|
||||
var borderObj = selectedSizeWidget.firstChild;
|
||||
while(borderObj) {
|
||||
if(borderObj.nodeName == "DIV" && (borderObj.className == "wgBorder" || borderObj.className == "wgBoxBorder")) {
|
||||
if(borderObj.nodeName == "DIV" && (borderObj.className == "widgetBorder" || borderObj.className == "widgetBoxBorder")) {
|
||||
var contentObj = borderObj.firstChild;
|
||||
while(contentObj) {
|
||||
if(contentObj.nodeName == "DIV") {
|
||||
|
|
@ -793,15 +852,15 @@ function doApplyWidgetSize(fo_obj) {
|
|||
}
|
||||
|
||||
var hideElements = new Array();
|
||||
function restoreWgBtn() {
|
||||
var wgBtnArea = get_by_id('wgBtnArea');
|
||||
var wgBoxBtnArea = get_by_id('wgBoxBtnArea');
|
||||
if(!wgBtnArea || !wgBoxBtnArea) return;
|
||||
function restoreWidgetButtons() {
|
||||
var widgetButton = get_by_id('widgetButton');
|
||||
var boxWidgetButton = get_by_id('widgetBoxButton');
|
||||
if(!widgetButton || !boxWidgetButton) return;
|
||||
|
||||
wgBtnArea.style.visibility = 'hidden';
|
||||
get_by_id("wgArea").parentNode.appendChild(wgBtnArea);
|
||||
wgBoxBtnArea.style.visibility = 'hidden';
|
||||
get_by_id("wgArea").parentNode.appendChild(wgBoxBtnArea);
|
||||
widgetButton.style.visibility = 'hidden';
|
||||
get_by_id("zonePageContent").parentNode.appendChild(widgetButton);
|
||||
boxWidgetButton.style.visibility = 'hidden';
|
||||
get_by_id("zonePageContent").parentNode.appendChild(boxWidgetButton);
|
||||
|
||||
for(var i=0;i<hideElements.length;i++) {
|
||||
var obj = hideElements[0];
|
||||
|
|
@ -810,39 +869,57 @@ function restoreWgBtn() {
|
|||
hideElements = new Array();
|
||||
}
|
||||
|
||||
function showWgBtn(name, obj) {
|
||||
var wgBtnArea = get_by_id(name);
|
||||
if(!wgBtnArea) return;
|
||||
wgBtnArea.style.visibility = 'visible';
|
||||
obj.insertBefore(wgBtnArea, obj.firstChild);
|
||||
function showWidgetButton(name, obj) {
|
||||
var widgetButton = get_by_id(name);
|
||||
if(!widgetButton) return;
|
||||
widgetButton.style.visibility = 'visible';
|
||||
obj.insertBefore(widgetButton, obj.firstChild);
|
||||
/*
|
||||
var cobj = obj.firstChild;
|
||||
while(cobj) {
|
||||
cobj = cobj.nextSibling;
|
||||
}
|
||||
|
||||
obj.appendChild(widgetButton);
|
||||
*/
|
||||
}
|
||||
|
||||
function widgetSetup(evt) {
|
||||
var e = new xEvent(evt);
|
||||
var obj = e.target;
|
||||
|
||||
var o = jQuery(obj).parents('.wgWrap');
|
||||
if(jQuery(obj).is('.widgetButtons') || jQuery(obj).parents('.widgetButtons').size() > 0) return;
|
||||
if(jQuery(obj).is('.buttonBox') || jQuery(obj).parents('.buttonBox').size() > 0) return;
|
||||
|
||||
|
||||
var o = jQuery(obj).parents('.widgetOutput');
|
||||
if(o.size() == 0){
|
||||
restoreWgBtn();
|
||||
restoreWidgetButtons();
|
||||
return;
|
||||
}
|
||||
/*
|
||||
if(!obj || typeof(obj.className)=='undefined' || obj.className != 'widgetOutput') {
|
||||
restoreWidgetButtons();
|
||||
return;
|
||||
}
|
||||
*/
|
||||
|
||||
obj = o.get(0);
|
||||
var widget = o.attr('widget');
|
||||
if(!widget) return;
|
||||
|
||||
if(widget == 'widgetBox') {
|
||||
restoreWgBtn();
|
||||
showWgBtn('wgBoxBtnArea', obj);
|
||||
restoreWidgetButtons();
|
||||
showWidgetButton('widgetBoxButton', obj);
|
||||
} else {
|
||||
restoreWgBtn();
|
||||
showWgBtn('wgBtnArea', obj);
|
||||
restoreWidgetButtons();
|
||||
showWidgetButton('widgetButton', obj);
|
||||
|
||||
var p_obj = obj.parentNode;
|
||||
if(p_obj) {
|
||||
while(p_obj) {
|
||||
if(p_obj.nodeName == 'DIV' && p_obj.getAttribute('widget')=='widgetBox') {
|
||||
showWgBtn('wgBoxBtnArea', p_obj);
|
||||
showWidgetButton('widgetBoxButton', p_obj);
|
||||
break;
|
||||
}
|
||||
p_obj = p_obj.parentNode;
|
||||
|
|
@ -908,7 +985,7 @@ function widgetDragEnable(obj, funcDragStart, funcDrag, funcDragEnd) {
|
|||
|
||||
// 드래그를 시작할때 호출되는 함수 (이동되는 형태를 보여주기 위한 작업을 함)
|
||||
function widgetDragStart(tobj, px, py) {
|
||||
if(tobj.className == 'wgRight' || tobj.className == 'wgBoxRight') return;
|
||||
if(tobj.className == 'widgetResize' || tobj.className == 'widgetResizeLeft' || tobj.className == 'widgetBoxResize' || tobj.className == 'widgetBoxResizeLeft') return;
|
||||
var obj = widgetGetTmpObject(tobj);
|
||||
|
||||
xInnerHtml(obj, xInnerHtml(tobj));
|
||||
|
|
@ -938,11 +1015,16 @@ function widgetDrag(tobj, dx, dy) {
|
|||
|
||||
var pWidth = xWidth(tobj.parentNode);
|
||||
|
||||
var cssFloat = getFloat(tobj.parentNode);
|
||||
if(!cssFloat) cssFloat = 'left';
|
||||
|
||||
// 위젯 리사이즈 (우측)
|
||||
if(tobj.className == 'wgRight' || tobj.className == 'wgBoxRight') {
|
||||
if(tobj.className == 'widgetResize' || tobj.className == 'widgetBoxResize') {
|
||||
if(nx < sx+minWidth) nx = sx+minWidth;
|
||||
if(nx > zoneRight) nx = zoneRight;
|
||||
|
||||
if(cssFloat == 'right') nx = sx + pWidth;
|
||||
|
||||
var new_width = nx - sx;
|
||||
if(new_width < minWidth) new_width = minWidth;
|
||||
|
||||
|
|
@ -958,6 +1040,27 @@ function widgetDrag(tobj, dx, dy) {
|
|||
xWidth(tobj.parentNode, new_width);
|
||||
xHeight(tobj.parentNode, new_height);
|
||||
|
||||
// 위젯 리사이즈 (좌측)
|
||||
} else if(tobj.className == 'widgetResizeLeft' || tobj.className == 'widgetBoxResizeLeft') {
|
||||
|
||||
if(nx < zoneLeft) nx = zoneLeft;
|
||||
|
||||
if(cssFloat == 'left') nx = sx;
|
||||
|
||||
var new_width = pWidth + (sx - nx);
|
||||
if(new_width < minWidth) new_width = minWidth;
|
||||
|
||||
var new_height = ny - sy;
|
||||
if(new_height < minHeight) new_height = minHeight;
|
||||
|
||||
// 위젯의 크기 조절
|
||||
xWidth(tobj.nextSibling, new_width);
|
||||
xHeight(tobj.nextSibling, new_height);
|
||||
|
||||
xWidth(tobj.parentNode, new_width);
|
||||
xHeight(tobj.parentNode, new_height);
|
||||
|
||||
// 위젯 드래그
|
||||
} else {
|
||||
var obj = widgetGetTmpObject(tobj);
|
||||
|
||||
|
|
@ -967,7 +1070,7 @@ function widgetDrag(tobj, dx, dy) {
|
|||
// 박스 안에 있을 경우에는 박스내의 위젯하고 자리를 바꾸고 그 외의 경우에는 박스를 빠져 나간다
|
||||
if(tobj.parentNode != zonePageObj) {
|
||||
// 박스내에 있는 위젯들을 구함
|
||||
var widgetList = xGetElementsByClassName("wgWrap",tobj.parentNode);
|
||||
var widgetList = xGetElementsByClassName("widgetOutput",tobj.parentNode);
|
||||
|
||||
for(var i=0;i<widgetList.length;i++) {
|
||||
var target_obj = widgetList[i];
|
||||
|
|
@ -990,6 +1093,7 @@ function widgetDrag(tobj, dx, dy) {
|
|||
|
||||
if(next1) next1.parentNode.insertBefore(tobj, next1);
|
||||
if(next2) next2.parentNode.insertBefore(target_obj, next2);
|
||||
doFitBorderSize();
|
||||
widgetList = null;
|
||||
return;
|
||||
}
|
||||
|
|
@ -1003,7 +1107,11 @@ function widgetDrag(tobj, dx, dy) {
|
|||
var ll = parseInt(l,10) + parseInt(xWidth(p_tobj),10);
|
||||
var tt = parseInt(t,10) + parseInt(xHeight(p_tobj),10);
|
||||
if( (tobj.xDPX < l || tobj.xDPX > ll) || (tobj.xDPY < t || tobj.xDPY > tt) ) {
|
||||
zonePageObj.insertBefore(tobj, jQuery(tobj).parents('div.wgWrap[widget=widgetBox]').get(0));
|
||||
|
||||
// zonePageObj.insertBefore(tobj, tobj.parentNode.parentNode.parentNode);
|
||||
zonePageObj.insertBefore(tobj, jQuery(tobj).parents('div.widgetOutput[widget=widgetBox]').get(0));
|
||||
|
||||
doFitBorderSize();
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1041,6 +1149,8 @@ function widgetDrag(tobj, dx, dy) {
|
|||
|
||||
// 이동을 멈춤
|
||||
widgetManualEnd();
|
||||
|
||||
doFitBorderSize();
|
||||
boxList = null;
|
||||
return;
|
||||
}
|
||||
|
|
@ -1050,7 +1160,7 @@ function widgetDrag(tobj, dx, dy) {
|
|||
}
|
||||
|
||||
// 다른 위젯들을 구해서 자리를 바꿈
|
||||
var widgetList = xGetElementsByClassName("wgWrap",zonePageObj);
|
||||
var widgetList = xGetElementsByClassName("widgetOutput",zonePageObj);
|
||||
for(var i=0;i<widgetList.length;i++) {
|
||||
var target_obj = widgetList[i];
|
||||
var widget = target_obj.getAttribute("widget");
|
||||
|
|
@ -1075,6 +1185,7 @@ function widgetDrag(tobj, dx, dy) {
|
|||
|
||||
if(next1) next1.parentNode.insertBefore(tobj, next1);
|
||||
if(next2) next2.parentNode.insertBefore(target_obj, next2);
|
||||
doFitBorderSize();
|
||||
widgetList = null;
|
||||
return;
|
||||
}
|
||||
|
|
@ -1099,6 +1210,33 @@ function widgetDisapearObject(obj, tobj) {
|
|||
obj.parentNode.removeChild(obj);
|
||||
widgetTmpObject[tobj.id] = null;
|
||||
return;
|
||||
|
||||
/*
|
||||
var it = 5;
|
||||
var ib = 1;
|
||||
|
||||
var x = parseInt(xPageX(obj),10);
|
||||
var y = parseInt(xPageY(obj),10);
|
||||
var ldt = (x - parseInt(xPageX(tobj),10)) / ib;
|
||||
var tdt = (y - parseInt(xPageY(tobj),10)) / ib;
|
||||
|
||||
return setInterval(function() {
|
||||
if(ib < 1) {
|
||||
clearInterval(widgetDisapear);
|
||||
xInnerHtml(tobj,xInnerHtml(obj));
|
||||
xInnerHtml(obj,'');
|
||||
xDisplay(obj, 'none');
|
||||
obj.parentNode.removeChild(obj);
|
||||
widgetTmpObject[tobj.id] = null;
|
||||
return;
|
||||
}
|
||||
ib -= 5;
|
||||
x-=ldt;
|
||||
y-=tdt;
|
||||
xLeft(obj, x);
|
||||
xTop(obj, y);
|
||||
}, it/ib);
|
||||
*/
|
||||
}
|
||||
|
||||
// 마우스다운 이벤트 발생시 호출됨
|
||||
|
|
@ -1164,6 +1302,8 @@ function widgetDragDisable(id) {
|
|||
obj.dragStart = null;
|
||||
obj.drag = null;
|
||||
obj.dragEnd = null;
|
||||
//obj.style.backgroundColor = obj.getAttribute('source_color');
|
||||
|
||||
xRemoveEventListener(obj, 'mousedown', widgetMouseDown, false);
|
||||
|
||||
return;
|
||||
|
|
@ -1183,4 +1323,4 @@ function widgetManualEnd() {
|
|||
|
||||
widgetDragManager.obj = null;
|
||||
widgetDragManager.isDrag = false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue