void LoadSdkValues(IPhoneSdkVersion selectedVersion)
        {
            sdkStore.Clear();
            sdkStore.AppendValues(GettextCatalog.GetString("Default"), IPhoneSdkVersion.UseDefault);

            int idx  = 0;
            var sdks = IPhoneFramework.GetInstalledSdkVersions(isSim);

            for (int i = 0; i < sdks.Count; i++)
            {
                var v = sdks[i];
                if (selectedVersion.Equals(v))
                {
                    idx = i + 1;
                }
                sdkStore.AppendValues(v.ToString(), v);
            }

            if (idx == 0 && !selectedVersion.IsUseDefault)
            {
                sdkStore.AppendValues(GettextCatalog.GetString("{0} (not installed)", selectedVersion), selectedVersion);
                idx = sdks.Count + 1;
            }

            sdkCombo.Active = idx;
        }
        public IPhoneBuildOptionsWidget()
        {
            IPhoneFramework.CheckInfoCaches();

            this.Build();
            extraArgsEntry.AddOptions(menuOptions);

            linkCombo.AppendText("Don't link");               //MtouchLinkMode.None
            linkCombo.AppendText("Link SDK assemblies only"); //MtouchLinkMode.SdkOnly
            linkCombo.AppendText("Link all assemblies");      //MtouchLinkMode.All

            i18nTreeView.Model = i18nStore;
            sdkCombo.Model     = sdkStore;
            archCombo.Model    = archStore;

            var toggle = new CellRendererToggle();

            i18nTreeView.AppendColumn("", toggle, "active", 1);
            i18nTreeView.AppendColumn("", new CellRendererText(), "text", 0);
            i18nTreeView.HeadersVisible = false;
            toggle.Toggled += delegate(object o, ToggledArgs args) {
                TreeIter iter;
                if (i18nStore.GetIter(out iter, new TreePath(args.Path)))
                {
                    i18nStore.SetValue(iter, 1, !(bool)i18nStore.GetValue(iter, 1));
                }
            };

            sdkCombo.Changed += HandleSdkComboChanged;
            minOSComboEntry.Entry.Changed += delegate {
                UpdateArches();
            };

            enableMtouch4Features = IPhoneFramework.MonoTouchVersion >= new IPhoneSdkVersion(3, 99);
            if (enableMtouch4Features)
            {
                useLlvmCheck.Toggled += UpdateCodegenCheckSensitivity;
                archCombo.Changed    += UpdateCodegenCheckSensitivity;
            }
            else
            {
                advancedVbox.Remove(codeGenerationLabel);
                codeGenerationLabel.Destroy();
                advancedVbox.Remove(codeGenerationAlignment);
                codeGenerationAlignment.Destroy();
                advancedVbox.Remove(runtimeOptionsLabel);
                runtimeOptionsLabel.Destroy();
                advancedVbox.Remove(runtimeOptionsAlignment);
                runtimeOptionsAlignment.Destroy();
            }

            //sGen is currently unsupported
            if (enableMtouch4Features)
            {
                useSGenCheck.Sensitive = false;
            }

            this.ShowAll();
        }