GridBase

public class GridBase : MainLayerElement, VisualStylesOwner, PaletteManagerOwner, LookupProviderEvents, ItemProviderEvents, EditableItemProviderEvents, SelectionManagerEvents, IEditingListener, DataCellRendererOwner, OwnedCollectionOwner

그리드컬럼(GridColumn)과 그리드행(GridItem)으로 구성되는 2차원 셀들을 배치해서, 연결된 DataSet의 값 등을 표시하는 데이터 표시 UI 컨트롤들의 기반 클래스.
그리드는 DataSet 하나에 연결되고(setDataSource(_:)) 데이터셋의 값들을 가져와서 표시한다. 또, 그리드를 통해 사용자가 변경한 값들을 다시 데이터셋에 전달해서 반영되도록 한다. 그 변경은 다시 그리드에 전달된다. 그리드에서 데이터 편집은 기본적으로 행단위로 수정, 추가된다. 하나 이상의 셀을 편집한 후 완료(GridBase.commit()) 혹은 취소(GridBase.cancel(focus:))로 행 편집을 끝내게 된다.
그리드 각 셀의 표시는 셀렌더러(DataCellRenderer)들이 담당한다. 단순 텍스트를 표시하거나 이미지, Spark 차트 등으로 값을 표시하는 여러 종류의 렌더러들이 있다. 각 셀렌더러는 자신의 여러 속성과 여러 경로로 지정되는 GridStyles 속성들을 이용해 셀을 그리게 된다. Dataludi의 기본 컬럼 스타일(GridColumn.styles) 및 동적 스타일(DynamicStyle)을 활용하면 풍부한 데이터 표현을 할 수 있다.
각 그리드 셀은 하나의 그리드행과 하나의 컬럼으로 그 위치가 결정된다. 현재 편집 중이거나 편집 가능한 포커스셀의 위치는 각각 focusedRowfocusedColumn으로 알 수 있고, focusCell(row:column:reveal:select:) 등으로 포커스셀 위치를 지정할 수 있다.

  • Declaration

    Swift

    public init(container: UIComponent, resource: Resource, readMode: Bool)

    Parameters

    container

    이 그리드뷰가 포함된 뷰 컨테이너.

    resource

    readMode

    true로 지정하면 사용자가 수정할 수 없는 읽기만 가능한 상태가 된다.

  • 현재 그리드에 설정된 ColumnLayout.

    See also

    setColumnLayout(_:)

    Declaration

    Swift

    public var columnLayout: ColumnLayout? { get }
  • 컬럼 레이아웃을 지정한다. null을 지정하면 원본 컬럼 구성으로 복원된다.

    Throws

    ColumnLayout.DuplicatedColumnError. 레이아웃에 동일 컬럼이 중복으로 지정되면 발생한다.

    See also

    getColumnLayout

    Declaration

    Swift

    public func setColumnLayout(_ layout: ColumnLayout?) throws

    Parameters

    layout

    새로 지정할 컬럼 레이아웃 객체.

  • 데이터셀들과 그룹 행 등이 출력되는 GridBody 그리드 본체 영역 모델 객체를 리턴한다.
    이 객체를 통해 그리드 body 영역과 관련된 속성들을 가져오거나 설정할 수 있다.

    Declaration

    Swift

    public var body: GridBody { get }
  • 그리드 상단 영역에 수평으로 표시되는 GridHeader 그리드 헤더 객체를 리턴한다.
    이 객체를 통해 그리드 헤더 속성들을 가져오거나 설정할 수 있다.

    Declaration

    Swift

    public var header: GridHeader { get }
  • 그리드 하단 영역에 수평으로 표시되는 `GridFooter 그리드 푸터} 객체를 리턴한다.
    이 객체를 통해 그리드 푸터 속성들을 가져오거나 설정할 수 있다.

    Declaration

    Swift

    public var footer: GridFooter { get }
  • 그리드 좌측 영역에 수직으로 표시되는 RowIndicator 그리드행 인디케이터 객체를 리턴한다.
    인티케이터 객체. 이 객체를 통해 인디케이터 속성들을 가져오거나 설정할 수 있다.

    See also

    header, footer, checkBar

    Declaration

    Swift

    public var rowIndicator: RowIndicator { get }
  • 그리드 좌측 영역에 수직으로 표시되는 {@link CheckBar 체크바} 객체를 리턴한다.
    체크바 객체. 이 객체를 통해 체크바 속성들을 가져오거나 설정할 수 있다.

    Declaration

    Swift

    public var checkBar: CheckBar { get }
  • dataSource 속성 getter. 그리드에 연결되는 데이터셋.
    데이테셋이 연결되지 않으면 그리드가 할 수 있는 일이 거의 없으므로, 앱이나 그리드 초기화시 반드시 연결해야 한다.

    Declaration

    Swift

    public var dataSource: DataSet? { get }

    Return Value

    데이터셋 객체. null일 수 있다.

  • dataSource 속성 setter. 그리드에 연결되는 데이터셋.
    데이테셋이 연결되지 않으면 그리드가 할 수 있는 일이 거의 없으므로, 앱이나 그리드 초기화시 반드시 연결해야 한다. GridView에는 GridDataSet을 설정해야 한다.

    Declaration

    Swift

    public func setDataSource(_ value: DataSet?) throws

    Parameters

    value

    데이터셋 객체. null일 수 있다.

  • 내부적으로 생성된 모든 그리드 행 모델의 개수.
    그리드가 데이터셋에 연결되면 여러 방식의 필터링을 실행한 후 행 그룹핑 상태에서 접힌 상태의 행들까지 모든 포함하는 행 모델 집함을 생성한다. 이 속성은 모델 집합에 포함된 모든 행 모델의 개수를 리턴한다.
    getModelCount(dataOnly:)를 getModelCount(dataOnly:false)로 호출한 것과 동일하다.

    See also

    rowCount, getModelCount(dataOnly:)

    Declaration

    Swift

    public var modelCount: Int { get }

    Return Value

    전체 그리드행 모델 개수.

  • 그리드에 설정된 최상위 컬럼들 개수.
    현재 표시되지 않는 컬럼들도 포함한다. 표시 중인 컬럼들만의 개수는 {@link #visibleColumnCount()}로 알 수 있다.

    See also

    visibleColumnCount(), setColumns(_:)

    Declaration

    Swift

    public var columnCount: Int { get }

    Return Value

    컬럼 수.

  • 그리드에 설정된 최상위 컬럼들 중 표시되는 컬럼 개수.
    모든 컬럼의 개수는 columnCount()로 알 수 있다.

    See also

    columnCount(), setColumns(_:)

    Declaration

    Swift

    public var visibleColumnCount: Int { get }

    Return Value

    컬럼 수.

  • setColumns(GridColumn[])로 설정한 그리드 최상위 컬럼 목록을 리턴한다.

    See also

    setColumns(_:)

    Declaration

    Swift

    public var columns: [GridColumn]? { get }

    Return Value

    컬럼 목록.

  • 그리드 컬럼 셋을 설정한다.
    기존 컬럼들이나 컬럼 layout은 모두 제거된다. 컬럼이 설정되지 않으면 그리드가 할 수 있는 일이 없으므로 앱 혹은 그리드 초기화 시점에 설정되어야 한다.

    See also

    columns(_:)

    Declaration

    Swift

    public func setColumns(_ columns: [GridColumn]?) throws

    Parameters

    columns

    value 컬럼 목록.

  • 포커스 행의 그리드 내에서의 위치를 리턴한다.
    첫 번째 행위 위치값이 0이다.

    Declaration

    Swift

    public var focusedRow: Int { get }
  • focusedRow의 데이터행 위치를 리턴한다.

    Declaration

    Swift

    public var focusedDataRow: Int { get }

    Return Value

    DataSet 데이터셋 내에서 행의 위치.

  • 포커스행을 새로 설정한다.

    Throws

    DataSetError 포커스 이동 중 행편집 완료를 시도하는 중 발생한다.

    Throws

    ValidationError 포커스 이동 중 행편집이나 셀편집 완료를 시도하는 중 발생한다.

    Declaration

    Swift

    @discardableResult
    public func setFocusedRow(_ row: Int, reveal: Bool = true, select: Bool = true) throws -> Bool

    Parameters

    row

    포커스가 설정될 그리드행 인덱스.

    reveal

    true면 포커스행이 현재 화면에 표시되도록 스크롤시킨다.

    select

    true면 포커스셀을 선택한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 포커스행을 새로 설정한다.
    현재 행 편집 중이거나 편집기 표시 중 입력이 진행된 상태면 포커스행 변경을 취소한다. setFocusedRow(_:reveal:select:)와 다르게 예외를 발생시키지 않는다. 현재 편집 중 상태가 아닌 것이 확실하면 대신 이 함수를 호출할 수 있다.

    Throws

    DataSetError 포커스 이동 중 행편집 완료를 시도하는 중 발생한다.

    Throws

    ValidationError 포커스 이동 중 행편집이나 셀편집 완료를 시도하는 중 발생한다.

    Declaration

    Swift

    @discardableResult
    public func setFocusedRowIf(_ row: Int, reveal: Bool = true, select: Bool = true) -> Bool

    Parameters

    row

    포커스가 설정될 그리드행 인덱스.

    reveal

    true면 포커스행이 현재 화면에 표시되도록 스크롤시킨다.

    select

    true면 포커스셀을 선택한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 포커스 셀이 포함된 컬럼 객체 GridColumn을 리턴한다.
    포커스 셀이 없으면 null을 리턴한다.

    Declaration

    Swift

    public var focusedColumn: GridColumn? { get }

    Return Value

    포커스 셀 컬럼 객체.

  • 포커스 셀이 포함된 데이터컬럼 객체(DataColumn)를 리턴한다.
    포커스 셀이 없거나 데이터컬럼이 아니면 null을 리턴한다.

    Declaration

    Swift

    public var focusedDataColumn: DataColumn? { get }

    Return Value

    포커스 셀 컬럼 객체.

  • 포커스 셀이 포함된 value 컬럼 객체(ValueColumn)를 리턴한다.
    포커스 셀이 없거나 value 컬럼이 아니면 null을 리턴한다.

    Declaration

    Swift

    public var focusedValueColumn: ValueColumn? { get }

    Return Value

    포커스 셀 컬럼 객체.

  • 포커스를 갖는 셀의 컬럼(GridColumn) 위치를 변경한다.

    Throws

    DataSetError 포커스 이동 중 행편집 완료를 시도하는 중 발생한다.

    Throws

    ValidationError 포커스 이동 중 행편집이나 셀편집 완료를 시도하는 중 발생한다.

    Declaration

    Swift

    @discardableResult
    public func setFocusedColumn(_ column: GridColumn, reveal: Bool = true, select: Bool = true) throws -> Bool

    Parameters

    column

    설정할 컬럼 객체.

    reveal

    true면 해당 컬럼이 포함된 셀이 현재 그리드에 표시 중이 아닐 때, 스크롤 시켜서 지정한 컬럼 영역이 표시되도록 한다

    select

    해당 컬럼셀 영역이 선택되도록 한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 포커스를 갖는 셀의 GridColumn 위치를 변경한다.
    setFocusedColumn(_:reveal:select:)과 다르게 예외를 발생시키지 않는다. 현재 편집 중 상태가 아닌 것이 확실하면 대신 이 함수를 호출할 수 있다.

    Declaration

    Swift

    @discardableResult
    public func setFocusedColumnIf(_ column: GridColumn, reveal: Bool = true, select: Bool = true) -> Bool

    Parameters

    column

    설정할 컬럼 객체.

    reveal

    true면 해당 컬럼이 포함된 셀이 현재 그리드에 표시 중이 아닐 때, 스크롤 시켜서 지정한 컬럼 영역이 표시되도록 한다

    select

    해당 컬럼셀 영역이 선택되도록 한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 포커스셀의 위치를 새로 설정한다.

    Throws

    DataSetError 포커스 이동 중 행편집 완료를 시도하는 중 발생한다.

    Throws

    ValidationError 포커스 이동 중 행편집이나 셀편집 완료를 시도하는 중 발생한다.

    Declaration

    Swift

    @discardableResult
    public func focusCell(row: Int, column: GridColumn?, reveal: Bool = true, select: Bool = true) throws -> Bool

    Parameters

    row

    그리드행 인덱스.

    column

    컬럼.

    reveal

    true면 해당 컬럼이 포함된 셀이 현재 그리드에 표시 중이 아닐 때, 스크롤 시켜서 지정한 컬럼 영역이 표시되도록 한다

    select

    해당 컬럼셀 영역이 선택되도록 한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 포커스셀의 위치를 새로 설정한다.
    focusCell(row:column:reveal:select:) 과 다르게 예외를 발생시키지 않는다. 현재 편집 중 상태가 아닌 것이 확실하면 대신 이 함수를 호출할 수 있다.

    Declaration

    Swift

    @discardableResult
    public func focusCellIf(row: Int, column: GridColumn?, reveal: Bool = true, select: Bool = true) -> Bool

    Parameters

    row

    그리드행 인덱스.

    column

    컬럼.

    reveal

    true면 해당 컬럼이 포함된 셀이 현재 그리드에 표시 중이 아닐 때, 스크롤 시켜서 지정한 컬럼 영역이 표시되도록 한다

    select

    해당 컬럼셀 영역이 선택되도록 한다.

    Return Value

    실제 포커스셀의 위치가 변경되면 true.

  • 그리드의 현재 크기에 표시 중인 그리드행들의 개수.
    일부만 표시 중인 첫번째 행이나 마지막 행들도 포함한다. 온전히 모두 표시되는 행들만의 개수는 fullDisplayItemCount로, 그리드에 생성된 전체 행 수는 itemCount로 알 수 있다.

    See also

    fullDisplayRowCount,rowCount`

    Declaration

    Swift

    public var displayRowCount: Int { get }

    Return Value

    행의 개수.

  • 그리드의 현재 크기에 표시 중인 그리드행들의 개수.
    일부만 표시 중인 첫번째 행이나 마지막 행은 제외된다. 일부 표시 행들끼지 포함된 개수는 {@link #displayItemCount()}로, 그리드에 생성된 전체 행 수는 {@link #itemCount()}로 알 수 있다.

    See also

    displayRowCount, rowCount

    Declaration

    Swift

    public var fullDisplayRowCount: Int { get }

    Return Value

    행의 개수.

  • 그리드가 정렬 상태이면 true를 리턴.

    See also

    orderBy(fields:),isSortedField(_:),isFiltered

    Declaration

    Swift

    public var isSorted: Bool { get }

    Return Value

    정렬 여부.

  • 지정한 필드가 정렬 상태이면 true를 리턴.

    See also

    orderBy(int...),isSorted,isFiltered

    Declaration

    Swift

    public func isSortedField(_ field: Int) -> Bool

    Return Value

    정렬 여부.

  • 그리드가 필터된 상태이면 true를 리턴.

    See also

    addRowFilters(_:),isSortedField(_:),isSorted

    Declaration

    Swift

    public var isFiltered: Bool { get }

    Return Value

    필터 여부.

  • 현재 컬럼 선택 상태이면 true.

    See also

    isRowSelected

    Declaration

    Swift

    public var isColumnSelected: Bool { get }

    Return Value

    컬럼 선택 여부

  • 현재 행 선택 상태이면 true.

    See also

    isColumnSelected

    Declaration

    Swift

    public var isRowSelected: Bool { get }

    Return Value

    행 선택 여부

  • rowActions로 지정한 그리드행 액션들이 표시되는 행.
    기본값은 -1.

    See also

    rowActions, rowSwipeOptions

    Declaration

    Swift

    public var actionRow: Int { get set }

    Return Value

    그리드행 인덱스.

  • 데이터필드별 합계 값을 제공하는 GridSummarizer 객체를 리턴한다.

    Declaration

    Swift

    public var summarizer: GridSummarizer? { get }

    Return Value

    합계 값 제공 객체.

  • 내부적으로 생성된 모든 그리드 행 모델의 개수.
    그리드가 데이터셋에 연결되면 여러 방식의 필터링을 실행한 후 행 그룹핑 상태에서 접힌 상태의 행들까지 모든 포함하는 행 모델 집함을 생성한다. 이 속성은 모델 집합에 포함된 모든 행 모델의 개수를 리턴한다.

    See also

    rowCount, modelCount

    Declaration

    Swift

    public func getModelCount(dataOnly: Bool) -> Int

    Parameters

    dataOnly

    데이터셋의 데이터행들과 연결된 그리드행들만의 개수.

    Return Value

    전체 그리드행 모델 개수.

  • row번 째 위치한 그리드행에 연결된 데이터행 인덱스.
    그리드에서 필터링되지 않고, 정렬되지 않았다면 그리드행 인덱스와 데이터행 인덱스는 일치한다.

    Declaration

    Swift

    public func getDataRowOfRow(_ row: Int) -> Int

    Parameters

    row

    Row Index

    Return Value

    데이터행 위치.

  • 그리드에 표시 중인 컬럼들 중 가장 왼쪽에 있는 첫번째 컬럼을 리턴한다.
    첫번째 컬럼이 컬럼그룹이면 자손 컬럼들 중 첫번째 컬럼을 리턴한다.

    See also

    getLastColumn()

    Declaration

    Swift

    public func getFirstColumn() -> GridColumn?

    Return Value

    컬럼 객체.

  • 그리드에 표시 중인 컬럼들 중 가장 오른쪽에 있는 마지막 컬럼을 리턴한다.
    마지막 컬럼이 컬럼그룹이면 자손 컬럼들 중 마지막 컬럼을 리턴한다.

    See also

    getFirstColumn()

    Declaration

    Swift

    public func getLastColumn() -> GridColumn?

    Return Value

    컬럼 객체.

  • 그리드에 설정된 컬럼 들 중 index번 째 위치한 최상위 컬럼 객체를 리턴한다.
    컬럼 개수는 columnCount로 알 수 있다.

    Declaration

    Swift

    public func getColumn(at: Int) -> GridColumn?

    Parameters

    at

    index

    Return Value

    컬럼 객체.

  • 그리드에 현재 표시되는 컬럼(GridColumn)들 중 index번 째 위치한 최상위 컬럼 객체를 리턴한다.
    표시 중인 컬럼들의 개수는 visibleColumnCount()으로 알 수 있다.

    Declaration

    Swift

    public func getVisibleColumn(at: Int) -> GridColumn?

    Parameters

    at

    index

    Return Value

    컬럼 객체

  • cleare 매개변수가 true면 기존 컬럼들을 모두 제거하고, 그리드에 연결된 데이터셋(DataSet)의 필드 목록(DataSet.getFields(_:))에 일대일 대응하는 데이터컬럼(DataColumn)들을 생성해서 그리드에 원본 컬럼셋으로 설정(setColumns(GridColumn[]))한다.

    See also

    getLinearizedColumns(visibleOnly:by sorter:), linearizeColumns(visibleOnly:by sorter:)

    Declaration

    Swift

    public func generateColumns(clear: Bool = true) throws

    Parameters

    clear

    true면 기존 컬럼들을 제거한다. false면 기존 컬럼들 이 후에 추가한다.

  • 컬럼 이름(GridColumn.name)이 name 매개변수와 동일한 첫번째 컬럼 객체를 리턴한다.
    컬럼 그룹일 수 있다. 존재하지 않으면 null을 리턴한다. 컬럼 그룹이 아닌 Value 컬럼이나 데이터컬럼을 찾아야 하는 경우 valueColumnByName(_:recursive:)이나 dataColumnByName(_:recursive:)을 호출할 수 있다.

    Declaration

    Swift

    public func columnByName(_ name: String, recursive: Bool = true) -> GridColumn?

    Parameters

    name

    검색할 컬럼 명.

    recursive

    true면 컬럼 그룹에 포함된 컬럼들도 검색한다. 기본값은 true

    Return Value

    컬럼 객체.

  • 컬럼 이름(GridColumn.name)이 name 매개변수와 동일한 첫번째 ValueColumn 객체를 리턴한다.
    존재하지 않으면 null을 리턴한다.

    Declaration

    Swift

    public func valueColumnByName(_ name: String, recursive: Bool = true) -> ValueColumn?

    Parameters

    name

    검색할 컬럼 명.

    recursive

    true면 컬럼 그룹에 포함된 컬럼들도 검색한다. 기본값은 true

    Return Value

    컬럼 객체.

  • 컬럼 이름(GridColumn.name)이 name 매개변수와 동일한 첫번째 DataColumn 객체를 리턴한다.
    존재하지 않으면 null을 리턴한다.

    Declaration

    Swift

    public func dataColumnByName(_ name: String, recursive: Bool = true) -> DataColumn?

    Parameters

    name

    검색할 컬럼 명.

    recursive

    true면 컬럼 그룹에 포함된 컬럼들도 검색한다. 기본값은 true

    Return Value

    데이타 컬럼 객체.

  • 매개변수 field가 0 이상일 때, 그 필드에 연결된 첫번째 {@link DataColumn}을 리턴한다.
    해당하는 컬럼이 없으면 null을 리턴한다.

    See also

    dataSource, columnByFieldName(_:),columnsByField(field:),DataSet,DataField

    Declaration

    Swift

    public func columnByField(field: Int) -> DataColumn?

    Parameters

    field

    데이터필드(DataField) 인덱스.

    Return Value

    데이터컬럼 객체 혹은 null.

  • 그리드에 연결된 데이터셋(DataSet) 필드 중 매개변수 fieldName을 필드명으로 하는 데이터필드에 연결된 첫번째 DataColumn을 리턴한다.
    해당하는 컬럼이 없으면 null을 리턴한다.

    See also

    columnByField(int),columnsByField(int),getDataSource(),DataSet,DataField

    Declaration

    Swift

    public func columnByFieldName(_ fieldName: String) -> DataColumn?

    Parameters

    fieldName

    필드명.

    Return Value

    데이터컬럼 객체 혹은 null.

  • 매개변수 field가 0 이상일 때, 그 필드에 연결된 모든 {@link DataColumn}들의 목록을 리턴한다.
    해당하는 컬럼이 하나도 없으면 null을 리턴한다.

    See also

    columnByField(field:),columnByFieldName(_:),dataSource, DataSet, DataField

    Declaration

    Swift

    public func columnsByField(field: Int) -> [DataColumn]?

    Parameters

    field

    DataField 인덱스.

    Return Value

    데이터컬럼 객체 배열 혹은 null.

  • tag 문자열과 동일한 컬럼 tag(GridColumn.getTag())를 갖는 첫번째 컬럼을 리턴한다.
    하위 컬럼들도 모두 포함한다.

    See also

    GridColumn.getTag(),columnsByTag(tag:)

    Declaration

    Swift

    public func columnByTag(tag: String) -> GridColumn?

    Parameters

    tag

    Return Value

    컬럼 객체. 존재하지 않으면 null.

  • tag 문자열과 동일한 컬럼 tag(GridColumn.getTag())를 갖는 모든 컬럼을 리턴한다.
    하위 컬럼들도 모두 포함한다.

    See also

    GridColumn.getTag(),columnByTag(tag:)

    Declaration

    Swift

    public func columnsByTag(tag: String) -> [GridColumn]?

    Parameters

    tag

    Return Value

    컬럼 객체 목록. 해당 컬럼이 하나도 없으면 null.

  • 그리드에 설정된 컬럼들 중 컬럼그룹을 제외한 {@link ValueColumn} 목록을 리턴한다.

    Declaration

    Swift

    public func getValueColumns(visibleOnly: Bool) -> [ValueColumn]?

    Parameters

    visibleOnly

    true면 감춰진 상태의 컬럼들은 제외한다.

    Return Value

    컬럼 객체 목록.

  • 그리드에 설정된 컬럼들 중 DataColumn들만을 포함한 목록을 리턴한다.

    Declaration

    Swift

    public func getDataColumns(visibleOnly: Bool) -> [DataColumn]?

    Parameters

    visibleOnly

    true면 감춰진 상태의 컬럼들은 제외한다.

    Return Value

    컬럼 객체 목록.

  • 그리드에 설정된 컬럼들 중 화면 표시 상으로 최상위인 컬럼들의 목록을 리턴한다.

    Declaration

    Swift

    public func getDataRootColumns() -> [GridColumn]

    Return Value

    컬럼 객체 목록.

  • 모든 컬럼에 접근해서 콜백을 실행한다.
    하위 컬럼들도 역시 방문한다. 단, visitor에서 false를 리턴하면 방문이 중단된다.

    Declaration

    Swift

    public func visitColumns(visibleOnly: Bool, visitor: ColumnGroup.Visitor)

    Parameters

    visibleOnly

    true면 GridColumn.isVisible이 true인 컬럼들만 방문.

    visitor

    컬럼 방문 콜백.

  • 하위 컬럼을 포함한 모든 컬럼에 설정된 {@link GridColumn#getTag() tag}를 null로 재설정한다.

    Declaration

    Swift

    public func clearColumnTags(refresh: Bool)

    Parameters

    refresh

    true면 그리드를 다시 그린다.

  • 현재 setColumns(_:)로 설정한 원본 컬럼셋이 아닌 ColumnLayout이 설정된 상태면 true를 리턴한다.

    See also

    setColumnLayout(_:),setColumns(_:), linearizeColumns(visibleOnly:by sorter:),restoreColumns()

    Declaration

    Swift

    public var isColumnLayouted: Bool { get }

    Return Value

    컬럼 layout 설정 여부.

  • 모든 그리드행의 매개변수 fieldName으로로 {@link DataField 데이터필드}에 연결된 셀 값들의 목록을 리턴한다.

    Declaration

    Swift

    public func getFieldValues(fieldName: String) -> [Any?]?

    Parameters

    fieldName

    필드명.

    Return Value

    셀값 목록.

  • 모든 그리드행의 매개변수 field로 지정한 {@link DataField 데이터필드}에 연결된 셀 값들의 목록을 리턴한다.

    Declaration

    Swift

    public func getFieldValues(field: Int) -> [Any?]?

    Parameters

    field

    데이터필드 인덱스.

    Return Value

    셀값 목록.

  • 데이터셀 편집기가 표시 중이면 편집을 취소히고 편집기를 닫는다.
    `cancelEditor(hideEditor:)를 cancelEditor(hideEditor:true)의 형태로 호출한 것과 동일하다.

    See also

    commitEditor(), cancel(focus:)

    Declaration

    Swift

    public func cancelEditor()
  • 데이터셀 편집기가 표시 중이면 편집을 취소한다.
    hideEditor가 true면 편집기를 닫는다.

    See also

    commitEditor(),cancel(focus:)

    Declaration

    Swift

    public func cancelEditor(hideEditor: Bool)

    Parameters

    hideEditor

    true면 편집기를 닫는다.

  • 행 편집을 취소하고 종료 시킨다.
    수정 중이면 편집 값들이 무시되고, 추가 중이면 취소된다.

    See also

    commit(),cancelEditor()

    Declaration

    Swift

    @discardableResult
    public func cancel(focus: Bool = true) -> Bool

    Parameters

    focus

    true면 취소 완료 후 편집 중이던 셀 위치에 포커스를 설정한다.

    Return Value

    실제 편집 상태에서 취소됐다면 true 리턴.

  • 편집기가 표시 중이면 편집된 값을 저장하고 완료한다.
    hideEditor가 true면 편집기롤 닫는다. 편집 완료 중 ValidationError 예외가 발생하면 에러 상태가 셀에 저장된다

    Declaration

    Swift

    @discardableResult
    public func commitEditor(hideEditor: Bool = true) throws -> Bool

    Parameters

    hideEditor

    true면 완료 후 편집기를 닫는다.

    Return Value

    실제 완료되면 true.

  • 셀 편집 중이면 편집을 완료하고, 셀 단위 commit 모드일 경우 행 편집도 완료한다.
    EditOptions.isUpdateByCell()이나 EditOptions.isInsertByCell()이 true로 설정되면 셀 단위 커밋이 실행된다. commit()과 달리 셀단위 commit 모드가 아니면 행 편집을 완료하지 않는다.

    Throws

    Exception

    See also

    commit(),cancel(focus:),EditOptions.isUpdateByCell(),EditOptions.isInsertByCell()

    Declaration

    Swift

    @discardableResult
    public func commitCell() throws -> Bool

    Return Value

    실제 행 편집 완료되면 true.

  • 행 편집을 완료시킨다.
    셀 편집 중이면 먼저 편집을 종료하고, 수정, 추가 중 입력된 셀 값들을 데이터셋에 반영해서 행 편집을 완료한다.

    Throws

    Exception

    See also

    cancel(focus:),commitOrCancel()

    Declaration

    Swift

    @discardableResult
    public func commit() throws -> Bool

    Return Value

    실제 완료되면 true.

  • 행 편집 중이면 commit()을 시도하고 변경된 것이 없으면 cancel(focus:)한다.

    Throws

    ValidationError 편지 완료 시 validation에 실패하면 발생한다.

    Throws

    DataSetError 편집 완료 후 데이터셋 저장 시 발생할 수 있다.

    Declaration

    Swift

    public func commitOrCancel() throws
  • 지정한 그리드행이 read-only 상태이면 true를 리턴한다.
    행이 read-only이면 다른 옵션과 상관없이 그 행에 포함된 데이터셀에서 값을 편집할 수 없다.

    See also

    setReadOnly(row:readOnly:)

    Declaration

    Swift

    public func isReadOnly(row: Int) -> Bool

    Parameters

    row

    그리드행 인덱스.

    Return Value

    read-only 여부.

  • 그리드 행 모델로 지정한 행이 read-only 상태이면 true를 리턴한다.
    행이 read-only이면 다른 옵션과 상관없이 그 행에 포함된 데이터셀에서 값을 편집할 수 없다.

    Declaration

    Swift

    public func isReadOnly(model: GridItem) -> Bool

    Parameters

    model

    그리드행 모델.

    Return Value

    read-only 여부.

  • 지정한 그리드행의 read-only 상태를 설정한다..
    행이 read-only이면 다른 옵션과 상관없이 그 행에 포함된 데이터셀에서 값을 편집할 수 없다.

    See also

    isReadOnly(row:),setReadOnly(rows:readOnly:)

    Declaration

    Swift

    @discardableResult
    public func setReadOnly(row: Int, readOnly: Bool) -> Bool

    Parameters

    row

    그리드행 인덱스.

    readOnly

    boolean.

    Return Value

    read-only 상태가 변경되면 true.

  • 그리드행들의 read-only 상태를 설정한다..
    행이 read-only이면 다른 옵션과 상관없이 그 행에 포함된 데이터셀에서 값을 편집할 수 없다.

    See also

    setReadOnly(row:readOnly:),isReadOnly(row:)

    Declaration

    Swift

    @discardableResult
    public func setReadOnly(rows: [Int], readOnly: Bool) -> [Int]?

    Parameters

    rows

    그리드행 인덱스 목록.

    readOnly

    그리드행 read-only 여부.

    Return Value

    상태가 변경된 행들의 인덱스 목록.

  • 그리드행의 checked 상태를 변경할 수 있는 지 여부.
    이 값이 true를 리턴해야 setChecked(row:checked:force:exclusively:) 등으로 체크 상태를 변경할 수 있다. CheckBar에서는 조금 다른 조건을 추가할 수 있다.

    See also

    setCheckable(row:checkable:),setChecked(row:checked:force:exclusively:)

    Declaration

    Swift

    public func isCheckable(row: Int) -> Bool

    Parameters

    row

    그리드행 인덱스.

    Return Value

    setChecked(row:checked:force:exclusively:) 등으로 체크 상태를 변경할 수 있으면 true.

  • 그리드행 모델로 지정한 행의 checked 상태를 변경할 수 있는 지 여부.
    이 값이 true를 리턴해야 setChecked(row:checked:force:exclusively:) 등으로 체크 상태를 변경할 수 있다. CheckBar에서는 조금 다른 조건을 추가할 수 있다.

    See also

    isCheckable(row:),setCheckable(row:checkable:),setChecked(row:checked:force:exclusively:),CheckBar

    Declaration

    Swift

    public func isCheckable(model: GridItem) -> Bool

    Parameters

    model

    그리드행 모델.

    Return Value

    체크 상태를 변경 가능 여부.

  • 지정한 그리드행의 checkable 상태를 설정한다..
    행의 checkable 상태가 false면 그 행의 checked 상태를 변경할 수 없다.

    See also

    isCheckable(row:),setReadOnly(rows:readOnly:),CheckBar

    Declaration

    Swift

    @discardableResult
    public func setCheckable(row: Int, checkable: Bool) -> Bool

    Parameters

    row

    그리드행 인덱스.

    checkable

    상태.

    Return Value

    checkable 상태가 변경되면 true.

  • 지정한 그리드행들의 checkable 상태를 설정한다..
    행의 checkable 상태가 false면 그 행의 checked 상태를 변경할 수 없다.

    See also

    isCheckable(row:),setReadOnly(rows:readOnly:),CheckBar

    Declaration

    Swift

    @discardableResult
    public func setCheckable(rows: [Int], checkable: Bool) -> [Int]?

    Parameters

    rows

    그리드행 인덱스 목록.

    checkable

    그리드행 checkable 여부.

    Return Value

    read-only 상태가 변경된 행들의 인덱스 목록.

  • 지정한 그리드행이 check된 상태이면 true를 리턴한다.
    그리드행의 checked 상태는 CheckBar 셀에 표시된다.

    See also

    setChecked(row:checked:force:exclusively:),isCheckable(row:),CheckBar

    Declaration

    Swift

    public func isChecked(row: Int) -> Bool

    Parameters

    row

    그리드행 인덱스.

    Return Value

    checked 여부.

  • 지정한 그리드행들의 checked 상태를 리턴한다.

    Declaration

    Swift

    public func getChecked(rows: [Int]) -> [Bool]?

    Parameters

    rows

    그리드행 인덱스 목록.

    Return Value

    checked 상태 목록. 매개변수 rows가 null이면 null, 빈 배열이면 빈 배열.

  • 전체 그리드행들 중 checked 상태가 true인 행들의 목록을 리턴한다.
    행이 하나도 없으면 빈 배열을 리턴한다.

    See also

    getCheckedDataRows(visibleOnly:),isChecked(row:)

    Declaration

    Swift

    public func getCheckedRows(visibleOnly: Bool = true) -> [Int]?

    Parameters

    visibleOnly

    true면 감춰진 상태의 행들은 제외.

    Return Value

    그리드행 인덱스 목록.

  • Check된 데이터행들의 목록을 리턴한다.

    See also

    getCheckedRows(visibleOnly:), isChecked(item:)

    Declaration

    Swift

    public func getCheckedDataRows(visibleOnly: Bool = true) -> [Int]?

    Parameters

    visibleOnly

    true면 감춰진 상태의 행들은 제외.

    Return Value

    데이터행 인덱스 목록. 행이 하나도 없으면 빈 배열.

  • row 지정한 데이터행의 체크 상태를 재설정한다.

    Declaration

    Swift

    @discardableResult
    public func setChecked(row: Int, checked: Bool, force: Bool = false, exclusively: Bool = false, nullable: Bool = false) -> Bool

    Parameters

    row

    데이터행 인덱스.

    checked

    true면 데이터행이 체크 상태가 된다.

    force

    exclusively

    true면 기존 행들의 선택 상태를 모두 지운 후에 지정한 행을 선택한다.

    Return Value

    체크 상태가 변했으면 true.

  • rows로 지정한 그리드행들의 체크 상태를 설정한다.
    setChecked(row:checked:force:exclusively:nullable:)를 setChecked(row:checked:false:false:false)로 호출한 것과 동일하다.

    Declaration

    Swift

    @discardableResult
    public func setChecked(rows: [Int], checked: Bool, force: Bool = false) -> Int

    Parameters

    rows

    그리드행 인덱스 목록.

    checked

    true면 그리드행들이 checked 상태가 된다.

    force

    true면 checkable이 아나어도 체크 상태를 변경한다.

    Return Value

    체크 상태가 변한 데이터행 개수.

  • 모든 행의 체크 상태를 동시에 checked 값에 따라 변경한다.
    visibleOnly가 true면 감춰진 그룹 자식 행들은 변경하지 않는다. 또, checkableOnly가 true면 checkable(isCheckable(row:))이 false인 행들은 변경하지 않는다.

    Declaration

    Swift

    @discardableResult
    public func checkAll(checked: Bool, dataOnly: Bool = false, visibleOnly: Bool = true, checkableOnly: Bool = true, callback: CheckableCallback? = nil) -> Int

    Parameters

    checked

    true면 행이 체크된 상태가 되고, checkBar에 표시된다.

    dataOnly

    데이터행에 연결된 그리드행들만 변경한다.

    visibleOnly

    true면 감춰진 그룹 자식 행들은 변경하지 않는다.

    checkableOnly

    true면 isCheckable(row:)이 false인 행들은 변경하지 않는다.

    callback

    nil

    Return Value

    실제로 checked 상태가 변경된 행의 개수.

  • 지정한 행들의 checked 상태를 뒤바뀐 상태로 변경한다.
    rows가 null이면 모든 행들의 checked 상태를 변경한다.

    See also

    isChecked(row:), setChecked(row:checked:force:exclusively:)

    Declaration

    Swift

    public func toggleChecked(rows: [Int]?, visibleOnly: Bool = true, checkableOnly: Bool = true, rowEvents: Bool = false)

    Parameters

    rows

    그리드행 목록. null이면 모든 행.

    visibleOnly

    true면 감춰진 상태의 행들은 제외한다.

    checkableOnly

    true면 checkable(isCheckable(row:))인 행들만 변경.

    rowEvents

    true면 행별로 상태 변경 이벤트 발생.

  • 그리드 중앙에 메시지를 임시로 표시하고 지정된 기간 후에 자동으로 닫는다.

    Declaration

    Swift

    public func showToast(_ message: Any?, _ duration: Int = 2000)

    Parameters

    message

    표시할 메시지.

    duration

    표시 기간을 밀리초 단위로 지정한다.

  • 현재 셀 편집 중이면 true를 리턴한다.

    See also

    rowEditState

    Declaration

    Swift

    public func isEditing() -> Bool

    Return Value

    편집 중이면 true.

  • 현재 행 편집 상태를 {@link GridRowState} 상수로 리턴한다.

    See also

    isEditing(),editingRow

    Declaration

    Swift

    public var rowEditState: GridRowState { get }

    Return Value

    행 편집 상태.

  • row로 지정한 그리드행에 연결된 데이터행 수정을 시작한다.

    See also

    insertRow(insertAfter:), appendRow()

    Declaration

    Swift

    @discardableResult
    public func updateRow(_ row: Int = -1) -> Bool

    Parameters

    row

    그리드행 index. -1이면 현재 focus된 행이다.

    Return Value

    수정이 시작되면 true.

  • 마지막 데이터행 아래에서 신규 행 편집을 시작한다.
    행 추가가 실제로 시작되면 true를 리턴한다. 편집 완료 후 데이터셋에 행이 추가될 때 마지막 데이터행 다음에 추가된다. 데이터필드의 DataField.getDefaultValue() 기본값이나 컬럼의 DataColumn.getDefaultValue() 기본값이 편집행 셀들의 기본값으로 설정된다.

    See also

    insertRow(insertAfter:), updateRow(_:)

    Declaration

    Swift

    @discardableResult
    public func appendRow() -> Bool

    Return Value

    행 추가 시작 시 true.

  • 선택 옵션(SelectionOptions.mode)과 상관 없이 column1, column2를 영역으로 하는 컬럼 선택(ColumnSelection)이 설정된다.
    column2가 column1보다 이전 컬럼이면 선택 영역의 시작 컬럼은 column2로 설정된다.

    Declaration

    Swift

    @discardableResult
    public func setSelection(column1: GridColumn, column2: GridColumn) throws -> SelectionItem?

    Parameters

    column1

    선택 영역에 포함되는 시작 컬럼

    column2

    선택 영역에 포함되는 마지막 컬럼.

    Return Value

    설정된 선택 항목 객체.

  • 선택 옵션(`SelectionOptions.mode() 선택 옵션}과 상관 없이 column를 영역으로 하는 {@link ColumnSelection 컬럼 선택}이 설정된다.

    Declaration

    Swift

    @discardableResult
    public func setSelection(column: GridColumn) throws -> SelectionItem?

    Parameters

    column

    선택 영역에 포함되는 시작/마지막 컬럼.

    Return Value

    설정된 선택 항목 객체.

  • 선택 옵션(SelectionOptions.mode)과 상관 없이 row1, row2를 영역으로 하는 행 선택(RowSelection)이 설정된다.
    row2가 row1보다 이전 행 인덱스이면 선택 영역의 시작행은 row2로 설정된다.

    Declaration

    Swift

    @discardableResult
    public func setSelection(row1: Int, row2: Int) throws -> SelectionItem?

    Parameters

    row1

    선택 영역에 포함되는 시작 행.

    row2

    선택 영역에 포함되는 마지막 행.

    Return Value

    설정된 선택 항목 객체.

  • 선택 옵션(SelectionOptions.mode)과 상관 없이 row 행을 영역으로 하는 행 선택(RowSelection)이 설정된다.

    Declaration

    Swift

    @discardableResult
    public func setSelection(row: Int) throws -> SelectionItem?

    Parameters

    row

    선택 영역에 포함되는 시작/끝 행.

    Return Value

    설정된 선택 항목 객체.

  • 선택 영역에 포함된 그리드 행들의 번호들을 리턴한다.
    그리드행 번호는 0부터 시작한다.

    Declaration

    Swift

    public func getSelectedRows() -> [Int]?

    Return Value

    그리드행 번호 목록. 선택 행이 하나도 없는 경우 빈 배열.

  • 선택 영역에 포함된 그리드 행들의 데이터행 번호들을 리턴한다. 데이터행 번호는 0부터 시작한다.

    Declaration

    Swift

    public func getSelectedDataRows() -> [Int]?

    Return Value

    데이터행 번호 목록. 선택 행이 하나도 없는 경우 빈 배열.

  • 선택 영역을 제거한다.

    See also

    setSelection(row1:column1:row2:column2:mode:focus)

    Declaration

    Swift

    public func clearSelection()
  • 선택 영역에 포함된 셀들의 값을 지운다.

    Throws

    <#throws value description#>

    Declaration

    Swift

    @discardableResult
    public func eraseSelection(nullValue: Any? = nil, force: Bool = false) throws -> Bool

    Parameters

    nullValue

    <#nullValue description#>

    Return Value

    <#return value description#>

  • ImageList를 그리드에 등록한다.
    그리드에 등록된 이미지리스트만 스타일이나 렌더러에서 참조할 수 있다. 이미지리스트 이름이 null이거나 공백이면 등록할 수 없다. 또, 기존에 같은 이름으로 등록된 것이 있다면 등록되지 않는다. 먼저 unregisterImageList(name:) 호출로 기존 이미지리스트를 해제해야 한다.

    Declaration

    Swift

    @discardableResult
    public func registerImageList(images: ImageList) -> Bool

    Parameters

    images

    Return Value

    실제 새로 등록되었다면 true.

  • 그리드에 등록된 ImageList를 등록 해제한다.

    Declaration

    Swift

    @discardableResult
    public func unregisterImageList(name: String) -> Bool

    Parameters

    name

    등록된 이미지리스트 이름.

    Return Value

    registerImageList(name:)

  • 이름으로 등록된 ImageList를 가져온다.
    해당하는 이미지리스트가 등록되지 않았다면 null을 리턴한다.

    Declaration

    Swift

    public func getImageList(name: String?) -> ImageList?

    Parameters

    name

    등록된 이미지리스트 이름.

    Return Value

    이미지리스트 객체 혹은 null.

  • Fill 팔레트(FillPalette) 를 그리드에 등록한다.
    그리드에 등록된 팔레트만 스타일이나 렌더러에서 참조할 수 있다. 매개변수 name이 null이거나 공백이면 등록할 수 없다. 또, 기존에 같은 이름으로 등록된 것이 있다면 등록되지 않는다. 먼저 `unregisterPalette(name: /// 기존 팔레트를 해제해야 한다.

    Declaration

    Swift

    @discardableResult
    public func registerFillPalette(name: String, fills: [Any]) -> FillPalette?

    Parameters

    name

    팔레트 등록 이름.

    fills

    Fill 목록. 각 항목은 Fill 객체, 문자열 혹은 int 색상 값일 수 있다.

    Return Value

    실제 새로 등록된 팔레트 객체 혹은 null.

  • StrokePalette를 그리드에 등록한다.
    그리드에 등록된 팔레트만 스타일이나 렌더러에서 참조할 수 있다. 매개변수 name이 null이거나 공백이면 등록할 수 없다. 또, 기존에 같은 이름으로 등록된 것이 있다면 등록되지 않는다. 먼저 unregisterPalette(name:) 호출로 기존 팔레트를 해제해야 한다.

    Declaration

    Swift

    @discardableResult
    public func registerStrokePalette(name: String, strokes: [Any]) -> StrokePalette?

    Parameters

    name

    팔레트 등록 이름.

    strokes

    Stroke 목록. 각 항목은 Stroke객체, 문자열 혹은 int 색상 값일 수 있다.

    Return Value

    실제 새로 등록된 팔레트 객체 혹은 null.

  • 그리드에 등록된 Palette를 등록 해제한다.

    Declaration

    Swift

    @discardableResult
    public func unregisterPalette(name: String) -> Bool

    Parameters

    name

    등록된 팔레트 이름.

    See also

    registerFillPalette(name:fills:), registerStrokePalette(name:)

    Return Value

  • 기존 정렬 상태를 제거하고, 지정한 필드 순서대로 정렬한다.
    fields와 directions 목록 개수가 필드 수보다 적으면 마지막 설정 값을 따른다. null이면 각각 SortDirection.ASCENDING, SortCase.SENSITIVE로 정렬한다.

    See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(fields: [Int]?, directions: [SortDirection]?, textCases: [SortCase]?)

    Parameters

    fields

    데이터필드 인덱스 목록.

    directions

    정렬 방향 목록.

    textCases

    정렬시 대소문자 구분 비교 여부 목록.

  • See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(fields: Int...)

    Parameters

    fields

    데이터필드 인덱스 목록.

  • 기존 정렬 상태를 제거하고, 지정한 필드로 정렬한다.

    See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(field: Int, direction: SortDirection, textCase: SortCase)

    Parameters

    field

    데이터필드 인덱스.

    direction

    정렬 방향.

    textCase

    정렬시 대소문자 구분 비교 여부.

  • 기존 정렬 상태를 제거하고, 지정한 필드 순서대로 정렬한다.
    fields와 directions 목록 개수가 필드 수보다 적으면 마지막 설정 값을 따른다. null이면 각각 SortDirection.ASCENDING, SortCase.SENSITIVE로 정렬한다.

    See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(fieldNames: [String], directions: [SortDirection]?, textCases: [SortCase]?)

    Parameters

    fieldNames

    데이터필드 이름 목록.

    directions

    정렬 방향 목록.

    textCases

    정렬시 대소문자 구분 비교 여부 목록.

  • 기존 정렬 상태를 제거하고, 지정한 필드 순서대로 정렬한다.
    orderBy(fieldNames:directions:textCases:)을 orderBy(fieldNames:null:null)로 호출한 것과 동일하다.

    See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(fieldNames: String...)

    Parameters

    fieldNames

    데이터필드 이름 목록.

  • 기존 정렬 상태를 제거하고, 지정한 필드로 정렬한다.

    See also

    clearOrderBy()

    Declaration

    Swift

    public func orderBy(fieldName: String, direction: SortDirection, textCase: SortCase)

    Parameters

    fieldName

    데이터필드 이름.

    direction

    정렬 방향.

    textCase

    정렬시 대소문자 구분 비교 여부.

  • Declaration

    Swift

    public func clearOrderBy()
  • 지정한 필드들로 실행된 정렬 상태를 모두 제거한다.

    Declaration

    Swift

    public func removeOrderBy(fields: Int...)

    Parameters

    fields

    데이터필드 인덱스 목록.

  • 기존 정렬 상태를 제거하지 않고 지정한 필드로 정렬 상태를 추가한다.

    Declaration

    Swift

    public func addOrderBy(field: Int, direction: SortDirection, textCase: SortCase, reverse: Bool)

    Parameters

    field

    데이터필드 인덱스.

    direction

    정렬 방향.

    textCase

    정렬시 대소문자 구분 비교 여부.

    reverse

    true면 추가되는 정렬이 첫번째 정렬이 된다.

  • 지정한 데이터필드가 행 그룹핑에 포함됐으면 true를 리턴한다.

    Declaration

    Swift

    public func isGroupedField(_ field: Int) -> Bool

    Parameters

    field

    데이터필드 인덱스.

    Return Value

    행 그룹핑 포함 여부.

  • 지정한 컬럼에 연결된 데이터필드가 행 그룹핑에 포함됐으면 true를 리턴한다.

    Declaration

    Swift

    public func isGroupedColumn(_ column: GridColumn) -> Bool

    Parameters

    column

    컬럼.

    Return Value

    행 그룹핑 포함 여부.

  • 지정한 데이터필드가 행 그룹핑의 몇 번째 단계에 포함되었는 지를 리턴한다.
    첫번째로 행 그룹핑에 포함되면 0이다.

    Declaration

    Swift

    public func getGroupLevel(field: Int) -> Int

    Parameters

    field

    데이터필드 인덱스.

    Return Value

    필드의 행 그룹핑 인덱스.

  • 행 그룹핑 단계 수를 리턴한다.

    Declaration

    Swift

    public var groupLevels: Int { get }

    Return Value

    행 그룹핑 단계 수. 행 그룹핑 되지 않았다면 0.

  • 지정한 컬럼에 포함된 셀들이 그리드 화면에 표시될 수 있도록 한다.
    컬럼 셀이 화면 밖에 있으면 수평 스크롤한다.

    See also

    makeRowVisible(row:), makeCellVisible(row:column)

    Declaration

    Swift

    public func makeColumnVisible(column: GridColumn)

    Parameters

    column

    컬럼 객체.

  • 지정한 그리드행에 포함된 셀들이 그리드 화면에 표시될 수 있도록 한다.
    그리드행 셀이 화면 밖에 있으면 수직 스크롤한다.

    See also

    makeColumnVisible(column:), makeCellVisible(row:column)

    Declaration

    Swift

    public func makeRowVisible(row: Int)

    Parameters

    row

    그리드행 인덱스.

  • 지정한 셀이 화면에 표시될 수 있도록 한다.
    데이터셀이 화면 밖에 있으면 스크롤한다.

    Declaration

    Swift

    public func makeCellVisible(row: Int, column: GridColumn)

    Parameters

    row

    그리드행 인덱스.

    column

    컬럼 객체.

  • 지정한 컬럼의 자동 필터 목록을 표시한다.
    컬럼의 자동필터(DataColumn.autoFilter)가 활성화 되지 않은 상태이거나, 행 편집이면 표시하지 않는다.

    See also

    ColumnAutoFilter.isActive

    Declaration

    Swift

    @discardableResult
    public func showAutoFilterList(column: DataColumn) -> Bool

    Parameters

    column

    컬럼 객체.

    Return Value

    표시되면 true.

  • 현재 컬럼 자동필터 목록이 표시 중이면 true를 리턴한다.

    See also

    DataColumn.autoFilter

    Declaration

    Swift

    public var isAutoFilterListing: Bool { get }

    Return Value

    표시 중 여부.

  • 그리드행과 데이터필드 인덱스로 지정한 데이터셀의 값을 리턴한다.
    셀 값이 null이거나, 지정한 셀이 범위를 벗어난 경우 defaultValue를 대신 리턴한다.

    Declaration

    Swift

    public func getValueAt(row: Int, field: Int, defaultValue: Any? = nil) -> Any?

    Parameters

    row

    그리드행 인덱스.

    field

    데이터필드 인덱스.

    defaultValue

    셀 값이 없는 경우 대신 리턴할 값.

    Return Value

    데이터셀 값 혹은 defaultValue

  • 그리드행과 필드명으로 지정한 데이터셀의 값을 리턴한다.
    셀 값이 null이거나, 필드명이 잘못되거나, 지정한 행이 범위를 벗어난 경우 null을 리턴한다.

    Declaration

    Swift

    public func getValueAt(row: Int, fieldName: String, defaultValue: Any? = nil) -> Any?

    Parameters

    row

    그리드행 인덱스.

    fieldName

    데이터필드 이름.

    defaultValue

    셀 값이 없는 경우 대신 리턴할 값.

    Return Value

    데이터셀 값 혹은 null.

  • 그리드행과 컬럼으로 지정한 데이터셀의 값을 리턴한다.
    셀 값이 null이거나, 컬럼이 데이터필드에 연결되지 않거나, 지정한 행이 범위를 벗어난 경우 defaultValue를 대신 리턴한다.

    Declaration

    Swift

    public func getValueAt(row: Int, column: GridColumn, defaultValue: Any? = nil) -> Any?

    Parameters

    row

    그리드행 인덱스.

    column

    컬럼 객체.

    defaultValue

    셀 값이 없는 경우 대신 리턴할 값.

    Return Value

    데이터셀 값 혹은 defaultValue

  • 그리드행과 데이터필드 인덱스로 지정한 데이터셀의 값을 변경한다.
    지정한 행이 데이터행이 아니거나 field가 0보다 작으면 예외를 발생하지 않고 아무일도 하지 않는다.

    Throws

    DataSetError

    Declaration

    Swift

    public func setValueAt(row: Int, field: Int, newValue: Any?) throws

    Parameters

    row

    그리드행 인덱스.

    field

    데이터필드 인덱스.

    newValue

    데이터셀 값.

  • 그리드행과 필드명으로 지정한 데이터셀의 값을 변경한다.
    필드명이 잘못되거나, 지정한 행이 범위를 벗어난 경우 예외를 발생하지 않고 아무일도 하지 않는다.

    Throws

    DataSetError

    Declaration

    Swift

    public func setValueAt(row: Int, fieldName: String, newValue: Any?) throws

    Parameters

    row

    그리드행 인덱스.

    field

    데이터필드 이름.

    newValue

    데이터셀 값.

  • 그리드행과 컬럼으로 지정한 데이터셀의 값을 변경한다.
    컬럼이 데이터필드에 연결되지 않거나, 지정한 행이 범위를 벗어난 경우 예외를 발생하지 않고 아무일도 하지 않는다.

    Declaration

    Swift

    public func setValueAt(row: Int, column: GridColumn, newValue: Any?) throws

    Parameters

    row

    그리드행 인덱스.

    column

    컬럼 객체.

    newValue

    데이터셀 값.

  • startRow로 지정한 행부터 시작해서 지정한 필드들의 값에 해당하는 첫번째 그리드행을 리턴한다.
    fields나 values가 null이거나 빈 배열이면 -1을 리턴한다. 또, fields와 values 중 항목 크기가 작은 것에 맞춰 검색한다.

    Declaration

    Swift

    public func searchRow(fields: [Int], values: [Any?], options: SearchOptions?, startRow: Int = 0, wrap: Bool = true, focus: Bool = false) -> Int?

    Parameters

    fields

    데이터필드 인덱스 목록.

    values

    검색 값 목록.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    wrap

    true면 마지막 행까지 해당하는 행이 없을 때, 첫 행부터 startRow 이 전 행까지 계속 검색한다.

    focus

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 그리드행 인덱스. 없으면 -1.

  • startRow로 지정한 행부터 시작해서 지정한 필드의 값에 해당하는 첫번째 그리드행을 리턴한다.

    Declaration

    Swift

    public func searchRow(field: Int, value: Any?, options: SearchOptions?, startRow: Int = 0, wrap: Bool = true, select: Bool = false) -> Int?

    Parameters

    field

    데이터필드 인덱스.

    value

    검색 값.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    wrap

    true면 마지막 행까지 해당하는 행이 없을 때, 첫 행부터 startRow 이 전 행까지 계속 검색한다.

    select

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 그리드행 인덱스. 없으면 -1.

  • startRow로 지정한 행부터 시작해서 지정한 필드의 값에 해당하는 첫번째 그리드행을 리턴한다.

    Declaration

    Swift

    public func searchRow(field: String, value: Any?, options: SearchOptions?, startRow: Int = 0, wrap: Bool = true, select: Bool = false) -> Int?

    Parameters

    field

    데이터필드 이름.

    value

    검색 값.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    wrap

    true면 마지막 행까지 해당하는 행이 없을 때, 첫 행부터 startRow 이 전 행까지 계속 검색한다.

    select

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 그리드행 인덱스. 없으면 -1.

  • startRow로 지정한 행부터 시작해서 지정한 필드들의 값에 해당하는 첫번째 그리드행을 리턴한다.
    fields나 values가 null이거나 빈 배열이면 -1을 리턴한다. 또, fields와 values 중 항목 크기가 작은 것에 맞춰 검색한다.

    Declaration

    Swift

    public func searchRow(fields: [String], values: [Any?], options: SearchOptions?, startRow: Int = 0, wrap: Bool = true, select: Bool = false) -> Int?

    Parameters

    fields

    데이터필드 이름 목록.

    values

    검색 값 목록.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    wrap

    true면 마지막 행까지 해당하는 행이 없을 때, 첫 행부터 startRow 이 전 행까지 계속 검색한다.

    select

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 그리드행 인덱스. 없으면 -1.

  • startRow와 startColum으로 지정한 데이터셀 부터 시작해서,

    Declaration

    Swift

    public func searchCell(columns: [ValueColumn?]?, value: Any, options: SearchOptions?, startRow: Int, startColumn: Int, wrap: Bool, focus: Bool) -> SearchResult?

    Parameters

    columns

    검색 대상 컬럼 목록. null로 지정하면 감춰진 컬럼을 제외한 모든 {@link ValueColumn}을 대상으로 한다.

    value

    검색 값.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    startColumn

    columns들 중 검색 시작 컬럼 위치.

    wrap

    true면 마지막 컬럼이나 마지막 행까지 해당하는 행이 없을 때, 다음 행의 첫 컬럼 혹은 첫 행부터 startRow, startColumn 이 전 까지 계속 검색한다.

    focus

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 결과 혹은 null.

  • startRow와 startColum으로 지정한 데이터셀 부터 시작해서, 지정한 컬럼들 중 지정한 값에 해당하는 첫번째 셀의 위치를 찾는다.

    Declaration

    Swift

    public func searchCell(columnNames: [String], value: Any, options: SearchOptions?, startRow: Int, startColumn: Int, wrap: Bool, focus: Bool) -> SearchResult?

    Parameters

    columnNames

    검색 대상 컬럼 이름 목록. null로 지정하면 감춰진 컬럼을 제외한 모든 {@link ValueColumn}을 대상으로 한다.

    value

    검색 값.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    startColumn

    columns들 중 검색 시작 컬럼 위치.

    wrap

    true면 마지막 컬럼이나 마지막 행까지 해당하는 행이 없을 때, 다음 행의 첫 컬럼 혹은 첫 행부터 startRow, startColumn 이 전 까지 계속 검색한다.

    focus

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 결과 혹은 null.

  • startRow와 startColum으로 지정한 데이터셀 부터 시작해서, 지정한 컬럼에 속한 데이터셀 중에서 지정한 값에 해당하는 첫번째 셀의 위치를 찾는다.

    Declaration

    Swift

    public func searchCell(columnName: String, value: Any, options: SearchOptions?, startRow: Int, wrap: Bool, focus: Bool) -> SearchResult?

    Parameters

    columnName

    검색 대상 컬럼 이름. 잘못된 컬럼명이면 null을 리턴한다.

    value

    검색 값.

    options

    검색 옵션.

    startRow

    검색 시작 행.

    wrap

    true면 마지막 컬럼이나 마지막 행까지 해당하는 행이 없을 때, 다음 행의 첫 컬럼 혹은 첫 행부터 startRow, startColumn 이 전 까지 계속 검색한다.

    focus

    검색이 성공하면 해당 행의 셀에 포커스를 설정한다.

    Return Value

    검색된 결과 혹은 null.

  • 데이터셀 렌더러를 등록한다.
    등록된 렌더러는 GridStyles.renderer 스타일 값으로 사용되어 데이터셀별로 다를 렌더러를 지정할 수 있게 한다. id가 빈 문자열이거나 renderer가 null이면 아무일도 하지 않는다.

    Declaration

    Swift

    public func registerCellRenderer(id: String, _ renderer: DataCellRenderer) -> Bool

    Parameters

    id

    등록 id.

    renderer

    렌더러 객체.

    Return Value

    실제 등록되면 true.

  • 데이터셀 렌더러들을 등록한다.
    등록된 렌더러들은 GridStyles.renderer 스타일 값으로 사용되어 데이터셀별로 다를 렌더러를 지정할 수 있게 한다. 각 항목들 중 id가 빈 문자열이거나 renderer가 null이면 아무일도 하지 않는다.

    Declaration

    Swift

    @discardableResult
    public func registerCellRenderers(renderers: [String : DataCellRenderer]) -> Int

    Parameters

    renderers

    [등록 id : 렌더러 객체] 형태의 map data.

    Return Value

    실제 등록된 렌더러 개수.

  • 지정된 렌더러 id들에 해당하는 등록된 렌더러들을 제거한다.

    Declaration

    Swift

    @discardableResult
    public func unregisterCellRenderers(ids: [String]) -> Int

    Parameters

    ids

    rendererIds 등록시 설정한 id 목록.

    Return Value

    등록 해제된 렌더러 개수.

  • 그리드 각 옵션들과 각 구성 요소들에 명시적으로 설정된 스타일 값들을 모두 제거한다.

    Declaration

    Swift

    public func clearStyles(recursive: Bool)

    Parameters

    recursive

    true면 구성 요소의 하위 요소 스타일까지 모두 제거한다.

  • 지정한 컬럼의 너비를 사용자가 변경할 수 있으면 true 리턴.

    1. 우선 DisplayOptions.columnResizable이 true여야 한다.
    2. GridColumn.isResizable이 true여야 한다.
    3. DisplayOptions.isCheckParentResizable이 true이면 컬럼 GridColumn.group`이 resizable이어야 한다.
    4. 고정 컬럼인 경우 FixedOptions.isColumnResizable이 true여야 한다.

    See also

    DisplayOptions.isColumnResizable, DisplayOptions.isCheckParentResizable,`GridColumn.isResizable,FixedOptions.isColumnResizable,FixedOptions.columnCount

    Declaration

    Swift

    public func isResizable(column: GridColumn) -> Bool

    Parameters

    column

    컬럼

    Return Value

    컬럼 너비 변경 가능 여부.

  • 지정한 컬럼의 위치를 사용자가 변경할 수 있으면 true 리턴.

    1. 우선 DisplayOptions.isColumnMovable이 true여야 한다.
    2. 컬럼이 GridColumn.isMovable이 true이어야 한다.
    3. 고정 컬럼 영역에 속하지만 최상위 컬럼이 아니거나, 고정 컬럼이면 FixedOptions.isColumnMovable이 true여야 한다.

    See also

    DisplayOptions.isColumnMovable, GridColumn.isMovable,FixedOptions.isColumnMovable,GridColumn.isRoot

    Declaration

    Swift

    public func isMovable(column: GridColumn) -> Bool

    Parameters

    column

    컬럼

    Return Value

    위치 변경 가능 여부.

  • 지정한 그리드행이 드러나도록 조정한다.
    접혀진 상태이면 펼치고, 화면에 표시되지 않은 상태에서 display가 true면 표시되도록 스크롤한다.

    Declaration

    Swift

    public func revealRow(row: GridItem, focus: Bool, display: Bool)

    Parameters

    row

    focus

    display

  • 지정한 그리드행의 높이를 사용자가 변경할 수 있으면 true를 리턴한다.

    1. 우선 DisplayOptions.isRowResizable이 true여야 한다.
    2. 고정행이라면 FixedOptions.isRowResizable이 true이어야 한다. 범위를 벗어난 행이면 false를 리턴한다.

    See also

    DisplayOptions.isRowResizable, FixedOptions.isRowResizable,FixedOptions.getRowCount

    Declaration

    Swift

    public func isRowResizable(_ row: Int) -> Bool

    Parameters

    row

    그리드행 인덱스.

    Return Value

    높이 변경 가능 여부.

  • 그리드행 모델로 지정한 그리드행의 명시적 설정 높이를 리턴한다.
    setRowHeight(row:newHeight:noRedraw:) 등으로 행 높이를 명시적으로 설정한 적이 없다면 -1을 리턴한다. 0 이상의 값으로 행 높이를 명시적으로 설정하지 않으면 스타일 설정에 따라 기본 표시 행 높이가 자동으로 설정된다.

    Declaration

    Swift

    public func getRowHeight(model: GridItem) -> Int

    Parameters

    model

    그리드행 모델.

    Return Value

    명시적 설정 높이.

  • 지정한 그리드행의 명시적 설정 높이를 리턴한다.
    setRowHeight(row:newHeight:noRedraw:) 등으로 행 높이를 명시적으로 설정한 적이 없다면 -1을 리턴한다. 0 이상의 값으로 행 높이를 명시적으로 설정하지 않으면 스타일 설정에 따라 기본 표시 행 높이가 자동으로 설정된다.

    Declaration

    Swift

    public func getRowHeight(row: Int) -> Int

    Parameters

    row

    그리드행 인덱스.

    Return Value

    명시적 설정 높이.

  • 지정한 그리드행의 명시적 높이를 설정한다.
    0 이상의 값으로 행 높이를 명시적으로 설정하지 않으면 스타일 설정에 따라 기본 표시 행 높이가 자동으로 설정된다. -1 등 0 미만 값으로 설정하면 명시적 높이가 아닌 것으로 간주한다.

    Declaration

    Swift

    public func setRowHeight(row: Int, newHeight: Int, noRedraw: Bool)

    Parameters

    row

    그리드행 인덱스.

    newHeight

    행 높이.

    noRedraw

    true면 그리드에게 다시 그리도록 요청하지 않는다.

  • 지정한 그리드행의 명시적 높이 설정을 제거한다.

    Declaration

    Swift

    public func clearRowHeight(row: Int, noRedraw: Bool = false)

    Parameters

    row

    그리드행 인덱스.

    noRedraw

    true면 그리드에게 다시 그리도록 요청하지 않는다. default는 false.

  • 지정한 그리드행들의 명시적 높이를 설정한다.
    0 이상의 값으로 행 높이를 명시적으로 설정하지 않으면 스타일 설정에 따라 기본 표시 행 높이가 자동으로 설정된다. -1 등 0 미만 값으로 설정하면 명시적 높이가 아닌 것으로 간주한다.

    Declaration

    Swift

    public func setRowHeights(rows: [Int], newHeight: Int)

    Parameters

    rows

    그리드행 인덱스 목록.

    newHeight

    행 높이.

  • 명시적으로 설정된 모든 그리드행들의 설정을 제거한다.

    Declaration

    Swift

    public func clearRowHeights()
  • 진행 중인 애니메이션을 모두 중지 시킨다.

    Declaration

    Swift

    @discardableResult
    public func stopAnimations() -> Bool

    Return Value

    실제 중지되면 true.

  • 그리드 초기화 시 실행되는 애니메이션을 다시 실행 시킨다.
    defered가 true면 다음 layout 시점에 애니메이션을 실행시킨다.

    See also

    stopAnimations()

    Declaration

    Swift

    public func restartLoadAnimation(defered: Bool = false)

    Parameters

    defered

    지연 여부.

  • 선택 영역 중 지정한 컬럼에 포힘되는 셀이 존재하면 true를 리턴한다.

    Declaration

    Swift

    public func isSelected(column: GridColumn) -> Bool

    Parameters

    column

    컬럼 객체.

    Return Value

    컬럼 포함 여부.

  • 선택 영역 중 지정한 그리드행에 포힘되는 셀이 존재하면 true를 리턴한다.

    Declaration

    Swift

    public func isSelected(row: Int) -> Bool

    Parameters

    row

    그리드행 인덱스.

    Return Value

    그리드행 포함 여부.