use of org.zkoss.zul.Row in project adempiere by adempiere.
the class DynamicDashBoard method onEvent.
public void onEvent(Event event) throws Exception {
Component comp = event.getTarget();
Row row = (Row) comp;
int recordId = new Integer(row.getId());
MQuery query = new MQuery();
query.setZoomValue(recordId);
query.setZoomTableName(zoomTableName);
query.setZoomColumnName(zoomTableColumnName);
query.setRecordCount(1);
query.addRestriction(zoomTableColumnName, MQuery.EQUAL, new Integer(recordId));
AEnv.zoom(zoomWindowId, query);
}
use of org.zkoss.zul.Row in project adempiere by adempiere.
the class DynamicDashBoard method prepareRow.
/**
*
* @param rs
* @param labelList
* @param rows
* <BR>
*
*
* This method holding the logic to prepare Row based on
* ResultSet.
*
*
*/
public void prepareRow(ResultSet rs, Label[] labelList, Rows rows) {
Row row = null;
try {
ResultSetMetaData rsm = rs.getMetaData();
int count = rsm.getColumnCount();
int i = 0;
int a = 0;
if (zoomWindowId > 0 && zoomTabId > 0) {
if (displayZoomCol) {
i = 1;
a = 1;
} else {
//Event enabled
i = 2;
//To start creating labels from second column as first column is record ID.
a = 2;
}
} else {
i = 1;
a = 1;
}
row = new Row();
//create rows with data
while (i <= count) {
String name = rsm.getColumnTypeName(i);
if (name.equalsIgnoreCase("varchar")) {
if (rs.getString(i) != null)
labelList[i - a] = new Label(rs.getString(i));
else
labelList[i - a] = new Label(" ");
} else if (name.equalsIgnoreCase("numeric")) {
if (rs.getString(i) != null)
labelList[i - a] = new Label(new Integer(rs.getInt(i)).toString());
else
labelList[i - a] = new Label(" ");
} else if (name.equalsIgnoreCase("bpchar")) {
if (rs.getString(i) != null)
labelList[i - a] = new Label(rs.getString(i));
else
labelList[i - a] = new Label(" ");
} else if (name.equalsIgnoreCase("timestamptz")) {
if (rs.getTimestamp(i) != null) {
labelList[i - a] = new Label(rs.getTimestamp(i).toString());
} else {
labelList[i - a] = new Label(" ");
}
}
i = i + 1;
}
for (int j = 0; j < labelList.length; j++) {
row.appendChild(labelList[j]);
}
if (zoomWindowId > 0 && zoomTabId > 0) {
row.setId(String.valueOf(rs.getInt(zoomTableColumnName)));
if (event == null || event.length() == 0) {
//default event
event = Events.ON_DOUBLE_CLICK;
}
row.addEventListener(event, this);
}
row.setParent(rows);
} catch (Exception e) {
logger.log(Level.WARNING, "Result set execution failed" + e);
}
}
use of org.zkoss.zul.Row in project adempiere by adempiere.
the class GridPanel method onPostSelectedRowChanged.
/**
* Event after the current selected row change
*/
public void onPostSelectedRowChanged() {
if (listbox.getRows().getChildren().isEmpty())
return;
int rowIndex = gridTab.isOpen() ? gridTab.getCurrentRow() : -1;
if (rowIndex >= 0 && pageSize > 0) {
int pgIndex = rowIndex >= 0 ? rowIndex % pageSize : 0;
org.zkoss.zul.Row row = (org.zkoss.zul.Row) listbox.getRows().getChildren().get(pgIndex);
if (!isRowRendered(row, pgIndex)) {
listbox.renderRow(row);
} else {
Row old = renderer.getCurrentRow();
int oldIndex = renderer.getCurrentRowIndex();
renderer.setCurrentRow(row);
if (old != null && old != row && oldIndex >= 0 && oldIndex != gridTab.getCurrentRow()) {
listModel.updateComponent(oldIndex % pageSize);
}
}
if (modeless && !renderer.isEditing()) {
renderer.editCurrentRow();
if (columnOnClick != null && columnOnClick.trim().length() > 0) {
setFocusToField(columnOnClick);
columnOnClick = null;
} else {
renderer.setFocusToEditor();
}
} else {
focusToRow(row);
}
} else if (rowIndex >= 0) {
org.zkoss.zul.Row row = (org.zkoss.zul.Row) listbox.getRows().getChildren().get(rowIndex);
if (!isRowRendered(row, rowIndex)) {
listbox.renderRow(row);
} else {
Row old = renderer.getCurrentRow();
int oldIndex = renderer.getCurrentRowIndex();
renderer.setCurrentRow(row);
if (old != null && old != row && oldIndex >= 0 && oldIndex != gridTab.getCurrentRow()) {
listModel.updateComponent(oldIndex);
}
}
if (modeless && !renderer.isEditing()) {
renderer.editCurrentRow();
if (columnOnClick != null && columnOnClick.trim().length() > 0) {
setFocusToField(columnOnClick);
columnOnClick = null;
} else {
renderer.setFocusToEditor();
}
} else {
focusToRow(row);
}
}
}
use of org.zkoss.zul.Row in project adempiere by adempiere.
the class GridTabRowRenderer method stopEditing.
/**
* Detach all editor and optionally set the current value of the editor as cell label.
* @param updateCellLabel
*/
public void stopEditing(boolean updateCellLabel) {
if (!editing) {
return;
} else {
editing = false;
}
Row row = null;
for (Entry<GridField, WEditor> entry : editors.entrySet()) {
if (entry.getValue().getComponent().getParent() != null) {
Component child = entry.getValue().getComponent();
Div div = null;
while (div == null && child != null) {
Component parent = child.getParent();
if (parent instanceof Div && parent.getParent() instanceof Row)
div = (Div) parent;
else
child = parent;
}
Component component = div.getFirstChild();
if (updateCellLabel) {
if (component instanceof Label) {
Label label = (Label) component;
label.getChildren().clear();
String text = getDisplayText(entry.getValue().getValue(), entry.getValue().getGridField());
setLabelText(text, label);
} else if (component instanceof Checkbox) {
Checkbox checkBox = (Checkbox) component;
Object value = entry.getValue().getValue();
if (value != null && "true".equalsIgnoreCase(value.toString()))
checkBox.setChecked(true);
else
checkBox.setChecked(false);
}
}
component.setVisible(true);
if (row == null)
row = ((Row) div.getParent());
entry.getValue().getComponent().detach();
entry.getKey().removePropertyChangeListener(entry.getValue());
entry.getValue().removeValuechangeListener(dataBinder);
}
}
GridTableListModel model = (GridTableListModel) grid.getModel();
model.setEditing(false);
}
use of org.zkoss.zul.Row in project adempiere by adempiere.
the class WBrowserSearch method configColumns.
/**
* Configure columns
* @param field
* @param field_To
*/
private void configColumns(WEditor editor, WEditor editorTo) {
int maxToAdd = getColumns() * 2;
int columnsToAdd = getColumns();
// for To field
if (editorTo != null) {
columnsToAdd += 2;
}
// Verify if is new row or not
if ((cols + columnsToAdd) > maxToAdd || currentRow == null) {
cols = 0;
currentRow = new Row();
rows.appendChild(currentRow);
}
}
Aggregations