in PluginsAndFeatures/azure-toolkit-for-eclipse/com.microsoft.azuretools.azureexplorer/src/com/microsoft/azuretools/azureexplorer/forms/CreateArmStorageAccountForm.java [132:281]
protected Control createDialogArea(Composite parent) {
setTitle("Create New Storage Account");
PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, "com.microsoft.azuretools.azureexplorer.storage_account_dialog");
Composite container = new Composite(parent, SWT.FILL);
GridLayout gridLayout = new GridLayout();
gridLayout.numColumns = 2;
gridLayout.marginBottom = 10;
container.setLayout(gridLayout);
GridData gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.horizontalAlignment = SWT.FILL;
// gridData.widthHint = 250;
container.setLayoutData(gridData);
nameLabel = new Label(container, SWT.LEFT);
nameLabel.setText("Name:");
nameTextField = new Text(container, SWT.LEFT | SWT.BORDER);
// gridData = new GridData(SWT.FILL, SWT.CENTER, true, true);
nameTextField.setLayoutData(gridDataForText(180));
subscriptionLabel = new Label(container, SWT.LEFT);
subscriptionLabel.setText("Subscription:");
subscriptionComboBox = new Combo(container, SWT.READ_ONLY);
subscriptionComboBox.setLayoutData(gridDataForText(180));
resourceGroupLabel = new Label(container, SWT.LEFT);
resourceGroupLabel.setText("Resource group:");
gridData = new GridData();
gridData.verticalAlignment = SWT.TOP;
resourceGroupLabel.setLayoutData(gridData);
final Composite composite = new Composite(container, SWT.NONE);
gridLayout = new GridLayout();
gridLayout.numColumns = 2;
gridData = new GridData();
gridData.horizontalAlignment = SWT.FILL;
gridData.verticalAlignment = GridData.BEGINNING;
gridData.grabExcessHorizontalSpace = true;
// gridData.widthHint = 250;
composite.setLayout(gridLayout);
composite.setLayoutData(gridData);
createNewRadioButton = new Button(composite, SWT.RADIO);
createNewRadioButton.setText("Create new");
createNewRadioButton.setSelection(true);
resourceGrpField = new Text(composite, SWT.LEFT | SWT.BORDER);
gridData = new GridData(SWT.FILL, SWT.CENTER, true, true);
resourceGrpField.setLayoutData(gridData);
useExistingRadioButton = new Button(composite, SWT.RADIO);
useExistingRadioButton.setText("Use existing");
resourceGrpCombo = new Combo(composite, SWT.READ_ONLY);
gridData = new GridData(SWT.FILL, SWT.CENTER, true, true);
resourceGrpCombo.setLayoutData(gridData);
resourceGroupViewer = new ComboViewer(resourceGrpCombo);
resourceGroupViewer.setContentProvider(ArrayContentProvider.getInstance());
SelectionListener updateListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent arg0) {
updateResourceGroup();
}
};
createNewRadioButton.addSelectionListener(updateListener);
useExistingRadioButton.addSelectionListener(updateListener);
updateResourceGroup();
regionLabel = new Label(container, SWT.LEFT);
regionLabel.setText("Region:");
regionComboBox = new Combo(container, SWT.READ_ONLY);
regionComboBox.setLayoutData(gridDataForText(180));
kindLabel = new Label(container, SWT.LEFT);
kindLabel.setText("Account kind:");
kindCombo = new Combo(container, SWT.READ_ONLY);
kindCombo.setLayoutData(gridDataForText(180));
performanceLabel = new Label(container, SWT.LEFT);
performanceLabel.setText("Performance:");
performanceCombo = new Combo(container, SWT.READ_ONLY);
performanceCombo.setLayoutData(gridDataForText(180));
replicationLabel = new Label(container, SWT.LEFT);
replicationLabel.setText("Replication:");
replicationComboBox = new Combo(container, SWT.READ_ONLY);
replicationComboBox.setLayoutData(gridDataForText(180));
if (subscription == null) { // not showing access tier with general purpose storage account which is used when creating vm
accessTierLabel = new Label(container, SWT.LEFT);
accessTierLabel.setText("Access Tier:");
accessTierComboBox = new Combo(container, SWT.READ_ONLY);
accessTierComboBox.setLayoutData(gridDataForText(180));
for (AccessTier type : AccessTier.values()) {
accessTierComboBox.add(type.toString());
accessTierComboBox.setData(type.toString(), type);
}
accessTierComboBox.select(0);
}
pricingLabel = new Link(container, SWT.LEFT);
pricingLabel.setText(PRICING_LINK);
gridData = new GridData();
gridData.horizontalSpan = 2;
pricingLabel.setLayoutData(gridData);
pricingLabel.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
try {
PlatformUI.getWorkbench().getBrowserSupport().getExternalBrowser().openURL(new URL(event.text));
} catch (Exception ex) {
/*
* only logging the error in log file
* not showing anything to end user
*/
Activator.getDefault().log("Error occurred while opening link in default browser.", ex);
}
}
});
nameTextField.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent modifyEvent) {
validateEmptyFields();
}
});
regionComboBox.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
validateEmptyFields();
}
});
resourceGrpField.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent modifyEvent) {
validateEmptyFields();
}
});
resourceGrpCombo.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
validateEmptyFields();
}
});
fillFields();
return super.createDialogArea(parent);
}