------------ GRID 행 드래그 예제 코드 단일 행 드래그------------ -- ----------
//두 번째 GRID 생성
var secondGrid = new Ext.grid.GridPanel({
ddGroup : 'firstGridDdGroup',//첫 번째 GRID의 ddGroup은
store: secondGridStore,
enableDragDrop: true,//True는 GridPanel에서 선택한 행에 대한 드래그 동작을 시작한다는 의미입니다
...다른 속성은 생략됩니다
});
//첫 번째 GRID ddGroup 생성
var firstGridDropTargetEl = firstGrid.getView().el.dom.childNodes[0].childNodes[1];
var firstGridDropTarget = new Ext.dd.DropTarget(firstGridDropTargetEl , {
ddGroup : 'firstGridDdGroup', //두 번째 GRID의 ddGroup과 동일
copy : true,
notifyDrop : function(ddSource, e, data){
function addRow( Record, index, allItems) {
varfoundItem = secondGridStore.find('name', Record.data.name);
if (foundItem == -1) {
firstGridStore.add(record)
firstGridStore.sort('name', 'ASC');
ddSource.grid.store.remove(record);
}
}
Ext.each(ddSource.dragData.selections ,addRow );
return(true);
}
)};
//두 번째 GRID ddGroup 생성
var secondGridDropTargetEl = secondGrid.getView().el.dom.childNodes[0].childNodes[1];
var secondGridDropTarget = new Ext.dd.DropTarget(secondGridDropTargetEl ,{
ddGroup : 'secondGridDdGroup',//첫 번째 GRID의 ddGroup과 동일
copy : true,
notifyDrop : function(ddSource, e, data){
function addRow( Record, index, allItems) {
varfoundItem = secondGridStore.find('name', Record.data.name);
if (foundItem == -1) {
secondGridStore.add(record); > secondGridStore.sort('name', 'ASC');
ddSource.grid.store.remove(record);
}
}
Ext.each(ddSource.dragData.selections ,addRow );
반환(true);
}
})