package com.mobilesorcery.sdk.builder.iphoneos.ui.preferences;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.jface.util.Util;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import com.mobilesorcery.sdk.builder.iphoneos.Activator;
import com.mobilesorcery.sdk.ui.Note;
import com.mobilesorcery.sdk.ui.UIUtils;
public class XCodePreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
private BooleanFieldEditor editor;
public XCodePreferencePage() {
setPreferenceStore(Activator.getDefault().getPreferenceStore());
}
@Override
public void init(IWorkbench workbench) {
}
@Override
protected Control createContents(Composite parent) {
Composite main = new Composite(parent, SWT.NONE);
main.setLayout(UIUtils.newPrefsLayout(2));
editor = new BooleanFieldEditor(Activator.ONLY_GENERATE_XCODE_PROJECT, "Only generate Xcode project for iOS devices (do not build it)", main);
editor.setPreferenceStore(getPreferenceStore());
editor.load();
boolean isMac = Util.isMac();
if (!isMac) {
Note info = new Note(main, SWT.NONE);
info.setText("This option is only available on Mac OS X");
editor.setEnabled(false, main);
info.moveAbove(null);
}
return main;
}
@Override
public boolean performOk() {
editor.store();
return true;
}
@Override
public void performDefaults() {
editor.loadDefault();
}
}