WorkbenchHelp.setHelp(composite, IHelpContextIds.SET_SVN_PROPERTY_DIALOG);
WorkbenchHelp.setHelp(area, IHelpContextIds.SET_SVN_PROPERTY_DIALOG);
	protected Control createDialogArea(Composite parent) {		Label label;		GridData gridData;		Listener updateEnablementsListener = new Listener() {			public void handleEvent(Event event) {				updateEnablements();			}		};				Listener validateListener = new Listener() {			public void handleEvent(Event event) {				validate();			}		};		Listener updatePropertiesListener = new Listener() {			public void handleEvent(Event event) {//				updateProperties();				validate();			}		};						Composite area = (Composite)super.createDialogArea(parent);		GridLayout layout = new GridLayout();		layout.numColumns = 1;		area.setLayout(layout);		// create the property name label and the corresponding Text				Composite composite = new Composite(area, SWT.NONE);		gridData = new GridData(GridData.FILL_HORIZONTAL);		gridData.grabExcessHorizontalSpace = true;		composite.setLayoutData(gridData);		layout = new GridLayout();		layout.numColumns = 2;		composite.setLayout(layout);		label = new Label(composite,SWT.LEFT);		label.setText(Policy.bind("SetSvnPropertyDialog.propertyName")); //$NON-NLS-1$		propertyNameText = new Combo(composite, SWT.BORDER);		gridData = new GridData(GridData.FILL_HORIZONTAL);		gridData.widthHint = 400;		gridData.grabExcessHorizontalSpace = true;		propertyNameText.setLayoutData(gridData);		if (property != null) {			propertyNameText.setText(property.getName());					propertyNameText.setEnabled(false);		}		getPropertyTypes();		propertyNameText.addListener(SWT.Modify,validateListener);		propertyNameText.addSelectionListener(new SelectionAdapter() {            public void widgetSelected(SelectionEvent se) {                getProperty();            }		  		});		propertyNameText.addModifyListener(new ModifyListener() {            public void modifyText(ModifyEvent me) {                getProperty();            }		    		});				// create the group		Group group = new Group(area,SWT.NULL);		group.setText(Policy.bind("SetSvnPropertyDialog.propertyContent")); //$NON-NLS-1$		gridData = new GridData(GridData.FILL_BOTH);		gridData.grabExcessHorizontalSpace = true;		group.setLayoutData(gridData);		layout = new GridLayout();		group.setLayout(layout); 				// create "Enter a text property" radio button		textRadio = new Button(group, SWT.RADIO);		textRadio.setText(Policy.bind("SetSvnPropertyDialog.enterTextProperty")); //$NON-NLS-1$		textRadio.addListener(SWT.Selection,updateEnablementsListener);		textRadio.setSelection(true);					// create the Text for the content		propertyValueText = new Text(group,SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);		gridData = new GridData(GridData.FILL_BOTH);		gridData.heightHint = 100;		gridData.widthHint = 400;		gridData.horizontalIndent = 30;		gridData.grabExcessHorizontalSpace = true;		propertyValueText.setLayoutData(gridData);		// create "Use a file" radio button		fileRadio = new Button(group, SWT.RADIO);		fileRadio.setText(Policy.bind("SetSvnPropertyDialog.useFile")); //$NON-NLS-1$		fileRadio.addListener(SWT.Selection,updateEnablementsListener);				// file input and button		composite = new Composite(group, SWT.NONE);		gridData = new GridData(GridData.FILL_HORIZONTAL);		gridData.grabExcessHorizontalSpace = true;		composite.setLayoutData(gridData);		layout = new GridLayout();		layout.numColumns = 2;		composite.setLayout(layout);		fileText = new Text(composite, SWT.SINGLE|SWT.BORDER);		gridData = new GridData(GridData.FILL_HORIZONTAL);		gridData.grabExcessHorizontalSpace = true;		gridData.horizontalIndent = 30;		fileText.setLayoutData(gridData);		fileText.setEditable(false);		browseButton = new Button(composite,SWT.PUSH);		browseButton.setText(Policy.bind("SetSvnPropertyDialog.browse")); //$NON-NLS-1$		browseButton.addSelectionListener(new SelectionAdapter(){			public void widgetSelected(SelectionEvent event) {				FileDialog fileDialog = new FileDialog(getShell(),SWT.OPEN);				String res = fileDialog.open();				if (res != null) {					fileText.setText(res);					validate();				}			}		});		// checkbox 		recurseCheckbox = new Button(area,SWT.CHECK);		gridData = new GridData(GridData.FILL_HORIZONTAL);		recurseCheckbox.setLayoutData(gridData);		recurseCheckbox.setText(Policy.bind("SetSvnPropertyDialog.setPropertyRecursively")); //$NON-NLS-1$		recurseCheckbox.setSelection(false);		if (!svnResource.isFolder()) {			recurseCheckbox.setEnabled(false);		}		recurseCheckbox.addListener(SWT.Selection, updatePropertiesListener);			// status message		statusMessageLabel = new Label(area, SWT.LEFT);		statusMessageLabel.setText(""); //$NON-NLS-1$		GridData data = new GridData(GridData.VERTICAL_ALIGN_FILL | GridData.FILL_HORIZONTAL);		statusMessageLabel.setLayoutData(data);		statusMessageLabel.setFont(parent.getFont());				if (property != null) {			propertyValueText.setText(property.getValue());			getProperty();		}		propertyValueText.addListener(SWT.Modify,updatePropertiesListener);			WorkbenchHelp.setHelp(composite, IHelpContextIds.SET_SVN_PROPERTY_DIALOG);					return area;	}