415 |
415 |
}
|
416 |
416 |
|
417 |
417 |
config.readOnly = r.booleanValue();
|
|
418 |
config.editPossible = calcEditPossible();
|
|
419 |
if (!config.readOnly)
|
|
420 |
{
|
|
421 |
updateEditors();
|
|
422 |
}
|
|
423 |
|
418 |
424 |
pushScreenDefinition();
|
419 |
425 |
}
|
420 |
426 |
|
... | ... | |
2039 |
2105 |
|
2040 |
2106 |
initMaxDataGuess();
|
2041 |
2107 |
|
2042 |
|
// Set editPossible value.
|
2043 |
|
final logical editPossible = new logical(false);
|
2044 |
|
for (BrowseColumnWidget column : columns)
|
2045 |
|
{
|
2046 |
|
if (!column.isReadOnly().booleanValue())
|
2047 |
|
{
|
2048 |
|
editPossible.assign(true);
|
2049 |
|
break;
|
2050 |
|
}
|
2051 |
|
}
|
2052 |
|
|
2053 |
|
ConfigManager.syncConfigChanges(new Runnable()
|
|
2108 |
ConfigManager.syncConfigChanges(() ->
|
2054 |
2109 |
{
|
2055 |
|
@Override
|
2056 |
|
public void run()
|
2057 |
|
{
|
2058 |
|
config.editPossible = editPossible.booleanValue();
|
2059 |
|
config.queryAssigned = true;
|
2060 |
|
}
|
|
2110 |
config.editPossible = calcEditPossible();
|
|
2111 |
config.queryAssigned = true;
|
2061 |
2112 |
});
|
2062 |
2113 |
|
2063 |
2114 |
// Create widgets for editing.
|
2064 |
|
int size = columns.size();
|
2065 |
|
for (int i = 0; i < size; i++)
|
2066 |
|
{
|
2067 |
|
BrowseColumnConfig columnConfig = columns.get(i).config;
|
2068 |
|
if (!columnConfig.readOnly)
|
2069 |
|
{
|
2070 |
|
GenericWidget editor;
|
2071 |
|
if (TOGGLE_BOX.equals(columnConfig.widgetType))
|
2072 |
|
{
|
2073 |
|
editor = new ToggleBoxWidget(true);
|
2074 |
|
}
|
2075 |
|
else
|
2076 |
|
{
|
2077 |
|
editor = new FillInWidget(true);
|
2078 |
|
}
|
2079 |
|
//TODO combo-box
|
2080 |
|
|
2081 |
|
editor.setId(WidgetId.nextID().asInt());
|
2082 |
|
editor.setDataType(columnConfig.dataType);
|
2083 |
|
|
2084 |
|
ConfigManager.getInstance().addWidgetConfig(editor.config);
|
2085 |
|
LogicalTerminal.registerWidget(editor, editor.getId());
|
2086 |
|
columns.get(i).setEditor(editor);
|
2087 |
|
}
|
2088 |
|
}
|
2089 |
|
|
|
2115 |
updateEditors();
|
2090 |
2116 |
pushScreenDefinition();
|
2091 |
2117 |
}
|
2092 |
2118 |
|
... | ... | |
5825 |
5858 |
return columns.iterator();
|
5826 |
5859 |
}
|
5827 |
5860 |
|
|
5861 |
boolean calcEditPossible()
|
|
5862 |
{
|
|
5863 |
if (isReadOnly().booleanValue())
|
|
5864 |
{
|
|
5865 |
return false;
|
|
5866 |
}
|
|
5867 |
|
|
5868 |
for (BrowseColumnWidget column : columns)
|
|
5869 |
{
|
|
5870 |
if (!column.isReadOnly().booleanValue())
|
|
5871 |
{
|
|
5872 |
return true;
|
|
5873 |
}
|
|
5874 |
}
|
|
5875 |
|
|
5876 |
return false;
|
|
5877 |
}
|
|
5878 |
|
|
5879 |
void updateEditors()
|
|
5880 |
{
|
|
5881 |
for (BrowseColumnWidget column : columns)
|
|
5882 |
{
|
|
5883 |
BrowseColumnConfig columnConfig = column.config;
|
|
5884 |
if (!columnConfig.readOnly && column.getEditor() == null)
|
|
5885 |
{
|
|
5886 |
GenericWidget editor;
|
|
5887 |
if (TOGGLE_BOX.equals(columnConfig.widgetType))
|
|
5888 |
{
|
|
5889 |
editor = new ToggleBoxWidget(true);
|
|
5890 |
}
|
|
5891 |
else
|
|
5892 |
{
|
|
5893 |
editor = new FillInWidget(true);
|
|
5894 |
}
|
|
5895 |
//TODO combo-box
|
|
5896 |
|
|
5897 |
editor.setId(WidgetId.nextID().asInt());
|
|
5898 |
editor.setDataType(columnConfig.dataType);
|
|
5899 |
editor.setValidation(column.getValidationExpression(), column.getValidationMessage());
|
|
5900 |
|
|
5901 |
ConfigManager.getInstance().addWidgetConfig(editor.config);
|
|
5902 |
LogicalTerminal.registerWidget(editor, editor.getId());
|
|
5903 |
column.setEditor(editor);
|
|
5904 |
}
|
|
5905 |
}
|
|
5906 |
}
|
|
5907 |
|
5828 |
5908 |
/**
|
5829 |
5909 |
* Finish the config processing for this browse.
|
5830 |
5910 |
* <p>
|