private void createCompositeControls()

in plugins/org.apache.karaf.eik.wtp.ui/src/main/java/org/apache/karaf/eik/wtp/ui/KarafRuntimeComposite.java [112:184]


    private void createCompositeControls() {
        final GridLayout layout = new GridLayout();
        layout.numColumns = 2;

        setLayout(layout);
        setLayoutData(new GridData(GridData.FILL_BOTH));

        PlatformUI.getWorkbench().getHelpSystem().setHelp(this, "org.apache.felix.karaf...");

        /*
         * Runtime name label and text box
         *
         * The runtime name controls
         */
        Label label = new Label(this, SWT.NONE);
        label.setText("Runtime name");
        GridData data = new GridData();
        data.horizontalSpan = 2;
        label.setLayoutData(data);

        name = new Text(this, SWT.BORDER);
        data = new GridData(GridData.FILL_HORIZONTAL);
        name.setLayoutData(data);
        name.addModifyListener(new ModifyListener() {
            @Override
            public void modifyText(final ModifyEvent e) {
                karafRuntimeWC.setName(name.getText());
                validateWizardState();
            }
        });

        // The installation directory selection controls
        label = new Label(this, SWT.NONE);
        label.setText("Installation directory");
        data = new GridData();
        data.horizontalSpan = 2;
        label.setLayoutData(data);

        installDir = new Text(this, SWT.BORDER);
        data = new GridData(GridData.FILL_HORIZONTAL);
        installDir.setLayoutData(data);
        installDir.addModifyListener(new ModifyListener() {
            @Override
            public void modifyText(final ModifyEvent e) {
                karafRuntimeWC.setLocation(new Path(installDir.getText()));
                validateWizardState();
            }
        });

        // File system browse button
        final Button browse = KarafRuntimeUtils.createButton(this, "Browse");
        browse.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent se) {
                final DirectoryDialog dialog = new DirectoryDialog(KarafRuntimeComposite.this.getShell());
                dialog.setMessage("Select Karaf installation directory");
                dialog.setFilterPath(installDir.getText());

                final String selectedDirectory = dialog.open();

                if (selectedDirectory != null) {
                    installDir.setText(selectedDirectory);
                }
            }
        });

        initializeWizard();
        validateWizardState();

        Dialog.applyDialogFont(this);

        name.forceFocus();
    }