Mask Editor


MaskCell 편집기 관련 설정을 할 수 있다.

* 영상은 자동 재생되며, 영상화면 왼쪽 윗부분에 재생목록을 클릭해서 원하는 목록을 재생 할 수 있습니다.

  - Options
     - Insert Mode : 체크해제시 값 입력이 되지 않는다.
     - Fill Form End : 체크시 셀 값을 편집기로 가져갈 때 셀 값의 길이가 마지막부터 채운다.
     - Include Separators : 체크시 셀 값을 저장할 때 구분 문자들을 포함시킨다.
     - Include Literals : 체크시 셀 값을 저장할 때 Literal들을 포함시킨다.
     - Strip Begin : 체크시 셀 값을 저장할 때 텍스트의 끝 공백들을 제거한다.
     - Strip End : 체크시 셀 값을 저장할 때 시작 공백들을 제거한다.
     - Strip Inner : 체크시 셀 값을 저장할 때 중간 공백들을 제거한다.
 소스보기
private GridColumn[] m_columns = new GridColumn[]{ DataColumn.create("id2", "id", new ColumnCallback() { @Override public void onCreate(DataColumn column) { column.setWidth(80); column.getStyles() .setTextFormat("(\\d{3})(\\d{0,3});$1-$2") .setTextAlign(TextAlign.CENTER); column.getHeader().setText("000-000"); column.setEditor( new MaskCellEditor() .setMask("000-000") ); } }), DataColumn.create("id3", "id", new ColumnCallback() { @Override public void onCreate(DataColumn column) { column.setWidth(80); column.getHeader().setText("999-999"); column.getStyles() .setTextFormat("(\\d{3})(\\d{0,3});$1-$2") .setTextAlign(TextAlign.CENTER); column.setEditor( new MaskCellEditor() .setMask("999-999") ); } }), DataColumn.create("id4", "id", new ColumnCallback() { @Override public void onCreate(DataColumn column) { column.setWidth(80); column.getHeader().setText("(000)-999"); column.getStyles() .setTextFormat("(\\d{3})(\\d{0,3});($1)-$2") .setTextAlign(TextAlign.CENTER); column.setEditor( new MaskCellEditor() .setMask("(000)-999") ); } }), DataColumn.create("id5", "id", new ColumnCallback() { @Override public void onCreate(DataColumn column) { column.setWidth(80); column.getHeader().setText("{000}-999"); column.getStyles() .setTextAlign(TextAlign.CENTER); column.setDisplayCallback(new ValueColumn.DisplayCallback() { @Override public String onGetDisplayText(ValueColumn column, int row, Object value) { if (value != null) { return "***-" + ((String)value).substring(3); } return ""; } }); column.setEditor( new MaskCellEditor() .setMask("{000}-999") ); } }) };
public void run(Context ctx, final GridView grid) { DataColumn column = grid.focusedDataColumn(); final MaskCellEditor editor = column != null ? (MaskCellEditor)column.getEditor() : null; if (editor == null) { Utils.alert(ctx, "Mask 편집기가 설정된 컬럼 셀을 먼저 선택하세요."); return; } formSettings.setValue("insertMode", editor.isInsertMode()); formSettings.setValue("fillFromEnd", editor.isFillFromEnd()); formSettings.setValue("includeSeparators", editor.isIncludeLiterals()); formSettings.setValue("includeLiterals", editor.isIncludeLiterals()); formSettings.setValue("stripBegin", editor.isStripBegin()); formSettings.setValue("stripEnd", editor.isStripEnd()); formSettings.setValue("stripInner", editor.isStripInner()); new FormDialog2().show(grid.getContext(), formSettings, new FormDialog2.OnCloseListener() { @Override public void onClose(Context ctx, Form form) { boolean insertMode = form.getBool("insertMode"); boolean fillFromEnd = form.getBool("fillFromEnd"); boolean includeSeparators = form.getBool("includeSeparators"); boolean includeLiterals = form.getBool("includeLiterals"); boolean stripBegin = form.getBool("stripBegin"); boolean stripEnd = form.getBool("stripEnd"); boolean stripInner = form.getBool("stripInner"); editor .setInsertMode(insertMode) .setFillFromEnd(fillFromEnd) .setIncludeSeparators(includeSeparators) .setIncludeLiterals(includeLiterals) .setStripBegin(stripBegin) .setStripEnd(stripEnd) .setStripInner(stripInner); } }); }