loginWindow.center();
}
private void initGrid(User user) {
Authorization auth = m_userAdmin.getAuthorization(user);
int count = 0;
for (String role : new String[] { "viewArtifact", "viewFeature", "viewDistribution", "viewTarget" }) {
if (auth.hasRole(role)) {
count++;
}
}
m_grid = new GridLayout(count, 4);
m_grid.setSpacing(true);
m_grid.setSizeFull();
m_mainToolbar = createToolbar(user);
m_grid.addComponent(m_mainToolbar, 0, 0, count - 1, 0);
m_artifactsPanel = createArtifactsPanel(user);
m_artifactToolbar = new HorizontalLayout();
m_artifactToolbar.addComponent(createAddArtifactButton(user));
CheckBox dynamicCheckBox = new CheckBox("Dynamic Links");
dynamicCheckBox.setImmediate(true);
dynamicCheckBox.setValue(Boolean.TRUE);
dynamicCheckBox.addListener(new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
m_dynamicRelations = event.getButton().booleanValue();
}
});
m_artifactToolbar.addComponent(dynamicCheckBox);
count = 0;
if (auth.hasRole("viewArtifact")) {
m_grid.addComponent(m_artifactsPanel, count, 2);
m_grid.addComponent(m_artifactToolbar, count, 1);
count++;
}
m_featuresPanel = createFeaturesPanel(user);
m_featureToolbar = createAddFeatureButton(user);
if (auth.hasRole("viewFeature")) {
m_grid.addComponent(m_featuresPanel, count, 2);
m_grid.addComponent(m_featureToolbar, count, 1);
count++;
}
m_distributionsPanel = createDistributionsPanel(user);
m_distributionToolbar = createAddDistributionButton(user);
if (auth.hasRole("viewDistribution")) {
m_grid.addComponent(m_distributionsPanel, count, 2);
m_grid.addComponent(m_distributionToolbar, count, 1);
count++;
}
m_targetsPanel = createTargetsPanel(user);
m_targetToolbar = createAddTargetButton(user);
if (auth.hasRole("viewTarget")) {
m_grid.addComponent(m_targetsPanel, count, 2);
m_grid.addComponent(m_targetToolbar, count, 1);
}
// Wire up all panels so they have the correct associations...