CCM NG: Some bugfixing for the configuration tab.
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4077 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
6c89d10a80
commit
c78122e677
|
|
@ -55,6 +55,7 @@ public class ConfigurationTab extends LayoutPanel {
|
|||
private final Form confClassesFilterForm;
|
||||
private final ConfigurationsTable configurationsTable;
|
||||
|
||||
private final ActionLink configurationBackLink;
|
||||
private final ConfigurationTable configurationTable;
|
||||
|
||||
private final SettingFormBoolean settingFormBoolean;
|
||||
|
|
@ -107,6 +108,14 @@ public class ConfigurationTab extends LayoutPanel {
|
|||
this, selectedConf, confClassesFilter);
|
||||
body.add(configurationsTable);
|
||||
|
||||
configurationBackLink = new ActionLink(new GlobalizedMessage(
|
||||
"ui.admin.configuration.back_to_configurations",
|
||||
ADMIN_BUNDLE));
|
||||
configurationBackLink.addActionListener(e -> {
|
||||
final PageState state = e.getPageState();
|
||||
hideConfiguration(state);
|
||||
});
|
||||
body.add(configurationBackLink);
|
||||
configurationTable = new ConfigurationTable(this,
|
||||
selectedConf,
|
||||
selectedSetting);
|
||||
|
|
@ -164,6 +173,7 @@ public class ConfigurationTab extends LayoutPanel {
|
|||
page.setVisibleDefault(confClassesFilterForm, true);
|
||||
page.setVisibleDefault(configurationsTable, true);
|
||||
|
||||
page.setVisibleDefault(configurationBackLink, false);
|
||||
page.setVisibleDefault(configurationTable, false);
|
||||
|
||||
page.setVisibleDefault(settingFormBoolean, false);
|
||||
|
|
@ -203,10 +213,12 @@ public class ConfigurationTab extends LayoutPanel {
|
|||
hideConfigurationsTable(state);
|
||||
hideSettingForms(state);
|
||||
|
||||
configurationBackLink.setVisible(state, true);
|
||||
configurationTable.setVisible(state, true);
|
||||
}
|
||||
|
||||
protected void hideConfiguration(final PageState state) {
|
||||
configurationBackLink.setVisible(state, false);
|
||||
configurationTable.setVisible(state, false);
|
||||
|
||||
selectedConf.clearSelection(state);
|
||||
|
|
@ -368,8 +380,6 @@ public class ConfigurationTab extends LayoutPanel {
|
|||
|
||||
selectedSetting.clearSelection(state);
|
||||
selectedValue.clearSelection(state);
|
||||
|
||||
showConfiguration(state);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import com.arsdigita.bebop.table.TableModelBuilder;
|
|||
import com.arsdigita.globalization.GlobalizedMessage;
|
||||
import com.arsdigita.util.LockableImpl;
|
||||
import com.arsdigita.util.UncheckedWrapperException;
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
|
@ -110,7 +111,7 @@ public class ConfigurationTable extends Table {
|
|||
final Object key,
|
||||
final int row,
|
||||
final int column) {
|
||||
return new ControlLink((String) value);
|
||||
return new ControlLink((Component) value);
|
||||
}
|
||||
|
||||
});
|
||||
|
|
@ -124,6 +125,7 @@ public class ConfigurationTable extends Table {
|
|||
if (event.getColumn() == COL_EDIT_SETTING) {
|
||||
final String settingName = (String) event.getRowKey();
|
||||
selectedSetting.setSelectedKey(state, settingName);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -209,9 +211,15 @@ public class ConfigurationTable extends Table {
|
|||
.getNegotiatedLocale());
|
||||
case COL_SETTING_VALUE: {
|
||||
try {
|
||||
return configuration.getClass().getField(setting).get(
|
||||
configuration);
|
||||
} catch (NoSuchFieldException | SecurityException | IllegalAccessException ex) {
|
||||
final Field field = configuration.getClass().
|
||||
getDeclaredField(setting);
|
||||
field.setAccessible(true);
|
||||
return field.get(configuration);
|
||||
// return configuration.getClass().
|
||||
// getDeclaredField(setting).get(configuration);
|
||||
} catch (NoSuchFieldException |
|
||||
SecurityException |
|
||||
IllegalAccessException ex) {
|
||||
LOGGER.error("Failed to read value from configuration.",
|
||||
ex);
|
||||
return new Label(new GlobalizedMessage(
|
||||
|
|
|
|||
|
|
@ -106,6 +106,8 @@ public class ConfigurationsTable extends Table {
|
|||
if (event.getColumn() == COL_TITLE) {
|
||||
final String confClassName = (String) event.getRowKey();
|
||||
selectedConf.setSelectedKey(state, confClassName);
|
||||
|
||||
configurationTab.showConfiguration(state);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -449,3 +449,4 @@ ui.admin.configuration.setting.enum.col_del=Delete
|
|||
ui.admin.configuration.setting.enum.value.edit=Edit
|
||||
ui.admin.configuration.setting.enum.value.del=Delete
|
||||
ui.admin.configuration.setting.enum.value.label=Value
|
||||
ui.admin.configuration.back_to_configurations=Back to list of configurations
|
||||
|
|
|
|||
|
|
@ -452,3 +452,4 @@ ui.admin.configuration.setting.enum.col_del=L\u00f6schen
|
|||
ui.admin.configuration.setting.enum.value.edit=Bearbeiten
|
||||
ui.admin.configuration.setting.enum.value.del=L\u00f6schen
|
||||
ui.admin.configuration.setting.enum.value.label=Wert
|
||||
ui.admin.configuration.back_to_configurations=Zur\u00fcck zur Liste der Konfigurationen
|
||||
|
|
|
|||
|
|
@ -425,3 +425,4 @@ ui.admin.configuration.setting.enum.col_del=Delete
|
|||
ui.admin.configuration.setting.enum.value.edit=Edit
|
||||
ui.admin.configuration.setting.enum.value.del=Delete
|
||||
ui.admin.configuration.setting.enum.value.label=Value
|
||||
ui.admin.configuration.back_to_configurations=Back to list of configurations
|
||||
|
|
|
|||
|
|
@ -416,3 +416,4 @@ ui.admin.configuration.setting.enum.col_del=Delete
|
|||
ui.admin.configuration.setting.enum.value.edit=Edit
|
||||
ui.admin.configuration.setting.enum.value.del=Delete
|
||||
ui.admin.configuration.setting.enum.value.label=Value
|
||||
ui.admin.configuration.back_to_configurations=Back to list of configurations
|
||||
|
|
|
|||
Loading…
Reference in New Issue