package com.mobilesorcery.sdk.builder.iphoneos.ui.properties;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.IWorkbenchPropertyPage;
import com.mobilesorcery.sdk.builder.iphoneos.Activator;
import com.mobilesorcery.sdk.builder.iphoneos.PropertyInitializer;
import com.mobilesorcery.sdk.ui.MoSyncPropertyPage;
import com.mobilesorcery.sdk.ui.UpdateListener;
public class IPhoneOSPropertyPage extends MoSyncPropertyPage implements IWorkbenchPropertyPage {
private Text bundleIdentifier;
public IPhoneOSPropertyPage() {
super(true);
}
@Override
protected Control createContents(Composite parent) {
Composite main = new Composite(parent, SWT.NONE);
main.setLayout(new GridLayout(2, false));
Label bundleIdentifierLabel = new Label(main, SWT.NONE);
bundleIdentifierLabel.setText("Bundle identifier:");
bundleIdentifier = new Text(main, SWT.SINGLE | SWT.BORDER);
bundleIdentifier.setLayoutData(new GridData(SWT.FILL, SWT.DEFAULT, true, false));
bundleIdentifier.addListener(SWT.Modify, new UpdateListener(this));
addContentAssist(bundleIdentifier);
initUI();
updateUI();
return main;
}
private void initUI() {
setText(bundleIdentifier, getProject().getProperty(PropertyInitializer.IOS_BUNDLE_IDENTIFIER));
}
public void validate() {
String bundleId = bundleIdentifier.getText();
setMessage(Activator.getDefault().validateBundleIdentifier(bundleId, true));
}
@Override
public boolean performOk() {
getProject().setProperty(PropertyInitializer.IOS_BUNDLE_IDENTIFIER, bundleIdentifier.getText());
return true;
}
@Override
public void performDefaults() {
setText(bundleIdentifier, getProject().getDefaultProperty(PropertyInitializer.IOS_BUNDLE_IDENTIFIER));
}
}