LocalTreeDataProvider
LocalTreeDataProvider 클래스. DataProviderBase 를 상속한다.
Signature:
export declare class LocalTreeDataProvider extends DataProviderBase
Extends: DataProviderBase
Remarks
[상위 클래스]
The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the LocalTreeDataProvider
class.
Properties
Property | Modifiers | Type | Description |
---|---|---|---|
onDataChanged | (provider: LocalTreeDataProvider) => void | 데이터가 변경 되었음을 알리는 콜백 | |
onRowAdded | (provider: LocalTreeDataProvider, row: number) => void | 행이 추가되었음을 알리는 콜백 | |
onRowAdding | (provider: LocalTreeDataProvider, row: number, index: number, child: any) => boolean | 행이 추가됨을 결정하는 콜백 | |
onRowCountChanged | (provider: LocalTreeDataProvider, newCount: number) => void | 행의 갯수가 변경되었음을 알리는 콜백 | |
onRowDeleted | (provider: LocalTreeDataProvider, row: number) => void | 행 삭제가 되었음을 알리는 콜백 | |
onRowDeleting | (provider: LocalTreeDataProvider, row: number) => boolean | 행 삭제를 결정하는 콜백 | |
onRowParentChanged | (provider: LocalTreeDataProvider, row: number, parent: number, index: number) => void | 행의 부모가 바뀐 것을 알리는 콜백 | |
onRowParentChanging | (provider: LocalTreeDataProvider, row: number, parent: number, index: number) => boolean | 행의 부모를 바꾸는 것을 결정하는 콜백 | |
onRowsAdded | (provider: LocalTreeDataProvider, parent: number, rows: number[]) => void | 행들이 추가되었음을 알리는 콜백 | |
onRowsDeleted | (provider: LocalTreeDataProvider, rows: number[]) => void | 행들이 삭제가 되었음을 알리는 콜백 | |
onRowSiblingMoved | (provider: LocalTreeDataProvider, row: number, offset: number) => void | 행 들의 형제 간 이동했음을 알리는 콜백 | |
onRowSiblingMoving | (provider: LocalTreeDataProvider, row: number, offset: number) => boolean | 행 들의 형제 간 이동을 결정하는 콜백 | |
onRowsSiblingMoved | (provider: LocalTreeDataProvider, rows: number[], offset: number) => void | dragAndDrop을 이용해서 형제 간 이동했음을 알리는 콜백 | |
onRowsSiblingMoving | (provider: LocalTreeDataProvider, rows: number[], offset: number) => boolean | DragAndDrop을 이용한 형제 간 이동을 결정하는 콜백 | |
onRowStateChanged | (provider: LocalTreeDataProvider, row: number) => void | 행 상태가 변경되었음을 알리는 콜백 | |
onRowStatesChanged | (provider: LocalTreeDataProvider, rows: number[]) => void | 여러 행들의 상태가 변경되었음을 알리는 콜백 | |
onRowsUpdated | (provider: LocalTreeDataProvider, rows: number[]) => void | 다수의 데이터 행이 변경되었음을 알리는 콜백 | |
onRowsUpdating | (provider: LocalTreeDataProvider, rows: number[]) => boolean | 다수의 데이터 행 변경을 결정하는 콜백 [매개변수 목록]
| |
onRowUpdated | (provider: LocalTreeDataProvider, row: number) => void | 행 수정이 되었음을 알리는 콜백 | |
onRowUpdating | (provider: LocalTreeDataProvider, row: number) => boolean | 행 수정을 결정하는 콜백 | |
onValueChanged | (provider: LocalTreeDataProvider, row: number, field: number) => void | 데이터의 값이 변경 되었음을 알리는 콜백 |
Methods
Properties Desc
onDataChanged
데이터가 변경 되었음을 알리는 콜백
Remarks:
key 입력이나 LocalTreeDataProvider.setValue() 를 이용하여 데이터를 변경한후 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
Example:
dataProvider.onDataChanged = function (provider) {
console.log('dataChanged!');
};
onRowAdded
행이 추가되었음을 알리는 콜백
Remarks:
TreeDataProvider에 데이터가 추가된 후 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
Example:
dataProvider.onRowAdded = function (provider, row) {
console.log("DataProvider row added at "+ row);
};
onRowAdding
행이 추가됨을 결정하는 콜백
Remarks:
TreeDataProvider에 데이터가 추가되기 직전에 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
index
- 부모 행의 자식들 중 삽입된 행의 위치(순서)
child
- 추가 된 행의 자식 데이터
Example:
dataProvider.onRowAdding = function (provider, row, index, child) {
if (row > 100) {
return false;
}
return true;
};
onRowCountChanged
행의 갯수가 변경되었음을 알리는 콜백
Remarks:
행 추가 및 삭제 등으로 행의 개수가 변경됐을 때 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
newCount
- 변경된 행의 갯수
Example:
dataProvider.onRowCountChanged = function (provider, count) {
console.log("DataProvider rowCount changed as: " + newCount);
};
onRowDeleted
행 삭제가 되었음을 알리는 콜백
Remarks:
TreeDataProvider에 데이터가 삭제된 후 호출한다.
softDeleting = true 일 경우 Row의 State가 Deleted로 변경된 것 만으로는 호출되지 않는다.
완전히 TreeDataProvider에서 삭제되었을 때 발생한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
Example:
dataProvider.onRowDeleted = function (provider, row) {
console.log('dataProvider row deleted ' + row);
};
onRowDeleting
행 삭제를 결정하는 콜백
Remarks:
TreeDataProvider에 데이터가 삭제되기 전 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
Example:
dataProvider.onRowDeleting = function (provider, row) {
if (row < 100) {
return false;
}
return true;
};
onRowParentChanged
행의 부모가 바뀐 것을 알리는 콜백
Remarks:
LocalTreeDataProvider.changeRowParent() 함수를 사용하여 부모가 바뀐 후에 발생한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 이동한 데이터 행의 트리 id
parent
- 이동한 곳의 부모 아이템
index
- 이동한 부모의 위치 index
Example:
dataProvider.onRowParentChanged = function (provider, row, parent, index) {
console.log('parent row changed to ' + parent);
};
onRowParentChanging
행의 부모를 바꾸는 것을 결정하는 콜백
Remarks:
LocalTreeDataProvider.changeRowParent() 함수를 사용하여 부모를 바꾸려고 할때 발생한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 이동하려는 데이터 행의 트리 id
parent
- 이동하려는 곳의 부모 아이템
index
- 이동하려는 부모의 위치 인덱스
Example:
dataProvider.onRowParentChanging = function (provider, row, parent, index) {
if (row % 2 === 0) {
return true;
}
return false;
};
onRowsAdded
행들이 추가되었음을 알리는 콜백
Remarks:
TreeDataProvider에 데이터가 추가된 후 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
parent
- 부모의 id
rows
- 데이터 행들의 트리 id들
Example:
dataProvider.onRowsAdded = function (provider, parent, rows) {
console.log("DataProvider row added at " + parent + " as " + rows.join(", "));
};
onRowsDeleted
행들이 삭제가 되었음을 알리는 콜백
Remarks:
TreeDataProvider에 데이터 행들이 삭제된 후 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
rows
- 데이터 행들의 트리 id들
Example:
dataProvider.onRowsDeleted = function (provider, rows) {
console.log('DataProvider rows deleted: ' + rows.join(', '));
};
onRowSiblingMoved
행 들의 형제 간 이동했음을 알리는 콜백
Remarks:
LocalTreeDataProvider.moveRowSibling() 함수를 사용하여 형제 간 위치가 바뀌었을 때 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 이동한 데이터 행의 트리 id
offset
- 상하 위치 단계 값
Example:
dataProvider.onRowSiblingMoved = function (provider, row, offset) {
console.log('sibling row moved on: ' + row);
};
onRowSiblingMoving
행 들의 형제 간 이동을 결정하는 콜백
Remarks:
LocalTreeDataProvider.moveRowSibling() 함수를 사용하여 형제 간 위치를 바꾸려고 할때 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 이동하려는 데이터 행의 트리 id
offset
- 상하 위치 단계 값
Example:
dataProvider.onRowSiblingMoving = function (provider, row, offset) {
if (row % 2 === 0) {
return true;
}
return false;
};
onRowsSiblingMoved
dragAndDrop을 이용해서 형제 간 이동했음을 알리는 콜백
Remarks:
마우스 dragAndDrop을 사용하여 형제 간 위치가 바뀌었을 때 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
rows
- 이동한 데이터 행의 트리 id 배열
offset
- 상하 위치 단계 값
Example:
dataProvider.onRowsSiblingMoved = function (provider, rows, offset) {
console.log('sibling rows moved on: ' + rows);
};
onRowsSiblingMoving
DragAndDrop을 이용한 형제 간 이동을 결정하는 콜백
Remarks:
마우스 dragAndDrop을 사용하여 형제 간 위치를 바꾸려고 할때 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
rows
- 이동하려는 데이터 행의 트리 id 배열
offset
- 상하 위치 단계 값
Example:
dataProvider.onRowsSiblingMoving = function (provider, rows, offset) {
if (rows.length > 1) {
return false;
}
return true;
};
onRowStateChanged
행 상태가 변경되었음을 알리는 콜백
Remarks:
TreeDataProvider의 데이터행의 rowState가 변경된 뒤 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 변경된 데이터 행의 트리 id
Example:
dataProvider.onRowStateChanged = function (provider, row) {
console.log('dataProvider row state changed: ' + row);
};
onRowStatesChanged
여러 행들의 상태가 변경되었음을 알리는 콜백
Remarks:
TreeDataProvider에서 여러 건의 데이터행의 rowState가 변경된 뒤 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
rows
- 변경된 데이터 행들의 트리 id 들
Example:
dataProvider.onRowStatesChanged = function (provider, rows) {
console.log('dataProvider row state changed: ' + rows.join(','));
};
onRowsUpdated
다수의 데이터 행이 변경되었음을 알리는 콜백
Remarks:
updateRows 등의 함수에서 이벤트 일괄 반영되도록 했을 때 발생한다.
[매개변수 목록]
provider
- DataProvider 컨트롤
rows
- 변경된 데이터 행들의 트리 id들
Example:
dataProvider.onRowsUpdated = function (provider, rows) {
console.log("DataProvider rows updated: " + rows.join(', '));
};
onRowsUpdating
다수의 데이터 행 변경을 결정하는 콜백
[매개변수 목록]
provider
- DataProvider 컨트롤
rows
- 변경될 데이터 행들의 트리 id
Example:
dataProvider.onRowsUpdating = function (provider, rows) {
if (rows.length > 10) {
return false;
}
return true;
};
onRowUpdated
행 수정이 되었음을 알리는 콜백
Remarks:
TreeDataProvider에 데이터가 수정되기 전에 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
Example:
dataProvider.onRowUpdated = function (provider, row) {
console.log("DataProvider row updated: " + row);
};
onRowUpdating
행 수정을 결정하는 콜백
Remarks:
TreeDataProvider에 데이터가 수정되기 전에 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 데이터 행의 트리 id
Example:
dataProvider.onRowUpdating = function (provider, row) {
if(row % 2 === 0) {
console.log("DataProvider row updated: " + row);
return true;
}
return false;
};
onValueChanged
데이터의 값이 변경 되었음을 알리는 콜백
Remarks:
LocalTreeDataProvider.setValue() 를 이용하여 데이터를 변경한후 호출한다.
[매개변수 목록]
provider
- TreeDataProvider 컨트롤
row
- 값이 변경된 데이터 행의 트리 id.
field
- 필드의 인덱스.
Example:
dataProvider.onValueChanged = function (provider, row, field) {
console.log('DataProvider row Value changed at ' + row + ' on ' + field);
};
Methods Desc
addChildRow
지정한 트리 행의 자식 행을 추가한다.
Example:
treeProvider.addChildRow(4, ['value1', 'value2', 'value3', 'value4'], -1, true);
changeRowParent
특정 데이터행의 위치를 지정한 행의 하위로 이동한다.
Example:
dataProvider.changeRowParent(4, 1, 2);
clearRows
DataProvider의 모든 행을 삭제한다.
Example:
treeProvider.clearRows();
fillCsvData
지정한 설정에 따라 csv 데이터를 로드하여 TreeDataProvider 로컬 저장소에 저장한다.
Example:
let options = {
start: 1,
count: 3
}
dataProvider.fillCsvData(data, options);
fillJsonData
지정한 설정에 따라 Json 데이터를 로드하여 TreeDataProvider 로컬 저장소에 저장한다.
Example:
let options = {
start: 1,
count: 3
}
dataProvider.fillJsonData([
{
FieldA: 'ABC',
FieldB: 10
}, {
FieldA: 'DEF',
FieldB: 30
}], options);
fillXmlData
지정한 설정에 따라 xml 데이터를 로드하여 TreeDataProvider 로컬 저장소에 저장한다.
Example:
let options = {
start: 1,
count: 3
}
dataProvider.fillXmlData(data, options);
getAncestors
지정한 행의 조상 행들의 id를 반환한다.
Example:
let ances = treeProvider.getAncestors(4);
getChildCount
지정한 행의 자식 행들의 개수를 반환한다.
Example:
let childCount = treeProvider.getChildCount(4);
getChildren
지정한 행의 모든 자식 행들의 고유 번호를 반환한다.
Example:
let children = treeProvider.getChildren(4);
getDescendantCount
지정한 행의 자손 행들의 개수를 반환한다.
Example:
let descenCount = treeProvider.getDescendantCount(4);
getDescendants
지정한 행의 자손 행들의 id를 반환한다.
Example:
let descendants = treeProvider.getDescendants(4, 2);
getHiddenRows
숨겨진 행들의 번호를 반환한다.
Example:
let rows = treeProvider.getHiddenRows();
getIconIndex
트리 행에 표시된 아이콘 인덱스를 반환한다.
Example:
let iconIndex = treeProvider.getIconIndex(4);
getJsonRow
지정한 데이터 행을 JSON 객체로 반환한다.
Example:
let jsonRow = treeProvider.getJsonRow(4);
getJsonRows
지정한 데이터 행과 자손들을 JSON 객체로 반환한다.
Example:
let jsonRow = treeProvider.getJsonRows(4, true);
getLevel
지정한 행의 level을 반환한다.
Example:
let level = treeProvider.getLevel(4);
getOutputRow
지정한 데이터 행을 형식을 적용하여 JSON 객체로 가져온다.
Example:
let opt = {
nullText: '빈 값'
}
let row = dataProvider.getOutputRow(opt, 4);
getOutputRows
지정한 데이터 행과 자손들을 형식을 적용하여 JSON 객체로 가져온다.
Example:
let opt = {
nullText: '빈 값'
}
let row = dataProvider.getOutputRows(opt, 4);
getParent
지정한 행의 부모의 row id를 반환한다.
Example:
let p = treeProvider.getParent(4);
getRowCount
저장 된 데이터행의 갯수를 반환한다.
Remarks:
루트의 하위에 저장되어있는 모든 아이템의 갯수를 반환한다.
Example:
let rowCount = ds.getRowCount();
getValue
지정한 데이터 셀의 값을 반환한다.
Example:
let val = dataProvider.getValue(2, 10);
hideRows
지정한 행 또는 행들을 화면에서 감춘다.
Remarks:
숨겨진 상태에서 remove, insert가 발생하는 경우 dataRow가 변경될 수 있으므로 사용시 주의한다.
Example:
// single
treeProvider.hideRows(4);
// array
treeProvider.hideRows([3,4]);
insertChildNode
지정한 트리 행에 자식노드를 원하는 위치에 추가한다.
Remarks:
트리형태의 자료를 추가할때 사용한다.
insertChildRow
지정한 트리 행의 자식행들 중 원하는 위치에 자식행을 추가한다.
Example:
treeProvider.insertChildRow(4, 3, ['value1', 'value2', 'value3', 'value4'], -1, true);
isHiddenRow
지정된 행이 숨겨진 행인지의 여부를 반환한다.
Example:
let isHidden = treeProvider.isHiddenRow(4);
moveRowSibling
같은 부모의 형제 사이에서 특정 데이터행의 위치를 지정한 단계만큼 이동한다.
Example:
dataProvider.moveRowSibling(4, 1);
removeRow
지정한 데이터행을 삭제한다.
Remarks:
지정한 데이터행이 조상행인 경우 모든 자손행들도 같이 삭제된다. DataProvider의 softDeleting이 true
인 경우 실제로 삭제되지않고 rowState만 변경된다.
Example:
treeProvider.removeRow(4);
removeRows
지정한 데이터 행들을 삭제한다.
Remarks:
지정한 데이터행이 조상행인 경우 모든 자손행들도 같이 삭제된다. DataProvider의 softDeleting이 true
인 경우 실제로 삭제되지않고 rowState만 변경된다.
Example:
treeProvider.removeRows([1,3,4]);
resetHiddenRows
숨겨진 모든 행을 다시 표시한다.
Example:
treeProvider.resetHiddenRows();
searchData
검색 설정 방식에 따라 특정 값이 있는 셀을 찾는다.
Example:
ds.searchData({fields:['fieldName'], value: 'value', parentId: 3});
searchDataRow
검색 설정 방식에 따라 특정 값이 있는 행을 찾는다.
Example 1:
ds.searchDataRow({fields:['fieldName'], values: ['value'], parentId: 3});
Example 2:
ds.searchDataRow({fields:['fieldName'], values: ['value']});
setCsvRows
트리의 데이터를 새로운 CSV 데이터로 설정한다.
Remarks:
트리의 기존 데이터행들을 모두 삭제하고 매개변수로 전달되는 CSV를 데이터 행들로 추가한다.
Example:
let rows = `Username; Identifier;First name;Last name
booker12;9012;Rachel;Booker
grey07;2070;Laura;Grey
johnson81;4081;Craig;Johnson
jenkins46;9346;Mary;Jenkins
smith79;5079;Jamie;Smith
`
dataProvider.setCsvRows(rows, 'number', false, '', 'icon');
setIconIndex
지정한 행의 아이콘을 변경한다.
Example:
treeProvider.setIconIndex(42, 4);
setNestedRows
트리의 데이터를 새로운 JSON 데이터로 설정한다.
Remarks:
트리의 기존 데이터행들을 모두 삭제하고 매개변수로 전달되는 JSON 객체를 데이터 행들로 추가한다. LocalTreeDataProvider.setObjectRows()와 다른점은 childrenProp와 iconProp가 field에 등록되어있지 않아도 된다.
Example:
dataProvider.setNestedRows(rows, 'rowsProp', 'childRowsProp', 'childrenProp", 'iconProp');
setObjectRows
트리의 데이터를 새로운 JSON 데이터로 설정한다.
Remarks:
트리의 기존 데이터행들을 모두 삭제하고 매개변수로 전달되는 JSON 객체를 데이터 행들로 추가한다.
Example:
dataProvider.setObjectRows(rows, 'rowsProp', 'childField', 'iconField');
setRows
트리의 데이터를 새로운 데이터로 설정한다.
Remarks:
트리의 기존 데이터행들을 모두 삭제하고 매개변수로 전달되는 배열의 배열을 데이터 행들로 추가한다.
Example:
dataProvider.setRows([{
'uno', 1, 'one', 'ichi', 'ee', 'I'
}, {
'dos', 2, 'two', 'ni', 'er', 'II'
}
], 'number', false, '', 'icon');
setValue
지정한 데이터 셀의 값을 변경한다.
Example:
dataProvider.setValue(2, 5, 'newValue');
setXmlRows
트리의 데이터를 새로운 XML 데이터로 설정한다.
Remarks:
트리의 기존 데이터행들을 모두 삭제하고 매개변수로 전달되는 XML을 데이터 행들로 추가한다. rowElement에 "row"를 입력하면 루트의 row element가 사용될 것이고, rowElement에 "row[0].row"를 입력하면 루트의 첫번째 행이 사용될 것이다. "row.row"는 "row[0].row"와 같다.
Example:
dataProvider.setXmlRows(rows, 'number', false, '', 'icon');
showHiddenRows
화면에서 감춘 행또는 행들을 보여준다.
Remarks:
filterMode, sortMode:"explicit"인 경우 showHiddenRows()
를 사용하면 필터나 정렬이 재적용된다. 접힌(collapse) 상태로 표시된다.
Example:
// single
treeProvider.showHiddenRows(4);
// array
treeProvider.showHiddenRows([3,4]);
updateRow
지정한 데이터행의 필드 값들을 수정한다.
Example:
treeProvider.updateRow(4, ['value1', 'value2', 'value3', 'value4'], true);
updateRows
지정한 데이터행들의 필드 값들을 수정한다.
Example:
treeProvider.updateRows([4,3], [{field1: 'value1', field2: 'value2', field2: 'value3', field4: 'value4'}, {field1: 'val1'}], true);