public PreferencesDialog(Settings set, Window parent, string argsOver) { settings = set; argsOverride = argsOver; dialog = new Dialog("Preferences", parent, DialogFlags.Modal | DialogFlags.DestroyWithParent, new object[]{Gtk.Stock.Close, -1}); var table = new Table(4, 3, false); sUseBundledDebugger = new CheckButton("Use bundled MSPDebug"); sUseBundledDebugger.Clicked += OnBundledState; table.Attach(sUseBundledDebugger, 0, 3, 0, 1, AttachOptions.Expand | AttachOptions.Fill, 0, 4, 4); Label lbl; lbl = new Label("MSPDebug path:"); lbl.SetAlignment(0.0f, 0.5f); table.Attach(lbl, 0, 1, 1, 2, AttachOptions.Fill, 0, 4, 4); sMSPDebugPath = new Entry(); table.Attach(sMSPDebugPath, 1, 2, 1, 2, AttachOptions.Expand | AttachOptions.Fill, 0, 4, 4); chooseMSPDebug = new Button("Choose..."); chooseMSPDebug.Clicked += OnChoose; table.Attach(chooseMSPDebug, 2, 3, 1, 2, AttachOptions.Fill, 0, 4, 4); lbl = new Label("MSPDebug arguments:"); lbl.SetAlignment(0.0f, 0.5f); table.Attach(lbl, 0, 1, 2, 3, AttachOptions.Fill, 0, 4, 4); sMSPDebugArgs = new Entry(); sMSPDebugArgs.Sensitive = (argsOverride == null); table.Attach(sMSPDebugArgs, 1, 3, 2, 3, AttachOptions.Expand | AttachOptions.Fill, 0, 4, 4); lbl = new Label("Console font:"); lbl.SetAlignment(0.0f, 0.5f); table.Attach(lbl, 0, 1, 3, 4, AttachOptions.Fill, 0, 4, 4); sConsoleFont = new FontButton(); table.Attach(sConsoleFont, 1, 3, 3, 4, AttachOptions.Expand | AttachOptions.Fill, 0, 4, 4); table.ShowAll(); ((Container)dialog.Child).Add(table); chooseDialog = new FileChooserDialog("Choose MSPDebug binary", dialog, FileChooserAction.Open, new object[]{Stock.Cancel, ResponseType.Cancel, Stock.Ok, ResponseType.Ok}); chooseDialog.DefaultResponse = ResponseType.Ok; }