public MergeDialog(GitRepository repo, bool rebasing) { this.Build(); this.UseNativeContextMenus(); this.repo = repo; this.rebasing = rebasing; store = new TreeStore(typeof(string), typeof(Xwt.Drawing.Image), typeof(string), typeof(string)); tree.Model = store; tree.SearchColumn = -1; // disable the interactive search var crp = new CellRendererImage(); var col = new TreeViewColumn(); col.PackStart(crp, false); col.AddAttribute(crp, "image", 1); var crt = new CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", 2); tree.AppendColumn(col); tree.Selection.Changed += HandleTreeSelectionChanged; if (rebasing) { labelHeader.Text = GettextCatalog.GetString("Select the branch to which to rebase:"); checkStage.Label = GettextCatalog.GetString("Stash/unstash local changes before/after rebasing"); buttonOk.Label = GettextCatalog.GetString("Rebase"); } checkStage.Active = true; Fill(); }
public DeployDialog(SolutionItem defaultEntry, bool createBuilderOnly) { this.Build(); notebook.ShowTabs = false; this.defaultEntry = defaultEntry; if (createBuilderOnly) { vboxSaveProject.Hide(); checkSave.Active = true; checkSave.Hide(); saveSeparator.Hide(); } else { pageSave.Hide(); FillProjectSelectors(); } store = new ListStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(object)); targetsTree.Model = store; targetsTree.HeadersVisible = false; CellRendererImage cr = new CellRendererImage(); cr.Yalign = 0; targetsTree.AppendColumn("", cr, "image", 0); targetsTree.AppendColumn("", new Gtk.CellRendererText(), "markup", 1); targetsTree.Selection.Changed += delegate(object s, EventArgs a) { UpdateButtons(); }; FillBuilders(); UpdateButtons(); }
public EntrySelectionTree() { this.Build(); store = new TreeStore(typeof(string), typeof(string), typeof(object), typeof(bool), typeof(bool)); tree.Model = store; tree.HeadersVisible = false; TreeViewColumn col = new TreeViewColumn(); Gtk.CellRendererToggle ctog = new CellRendererToggle(); ctog.Toggled += OnToggled; col.PackStart(ctog, false); CellRendererImage cr = new CellRendererImage(); col.PackStart(cr, false); Gtk.CellRendererText crt = new Gtk.CellRendererText(); col.PackStart(crt, true); col.AddAttribute(cr, "stock-id", 0); col.AddAttribute(crt, "markup", 1); col.AddAttribute(ctog, "active", 3); col.AddAttribute(ctog, "visible", 4); tree.AppendColumn(col); }
public IncludeNewFilesDialog(string title, FilePath baseDirectory) { this.Build(); this.Title = title; this.baseDirectory = baseDirectory; treeviewFiles.Model = store; treeviewFiles.SearchColumn = -1; // disable the interactive search treeviewFiles.HeadersVisible = false; // Headers are untranslated because they're hidden as default TreeViewColumn textColumn = new TreeViewColumn(); CellRendererToggle toggleRender = new CellRendererToggle(); toggleRender.Toggled += ToggleRenderToggled; textColumn.PackStart(toggleRender, false); textColumn.AddAttribute(toggleRender, "active", Columns.IsToggled); textColumn.Title = "Name"; var pixbufRenderer = new CellRendererImage(); textColumn.PackStart(pixbufRenderer, false); textColumn.AddAttribute(pixbufRenderer, "image", Columns.IconOpened); textColumn.AddAttribute(pixbufRenderer, "image-expander-open", Columns.IconOpened); textColumn.AddAttribute(pixbufRenderer, "image-expander-closed", Columns.IconClosed); CellRendererText textRenderer = new CellRendererText(); textColumn.PackStart(textRenderer, false); textColumn.AddAttribute(textRenderer, "text", Columns.Text); treeviewFiles.AppendColumn(textColumn); buttonExcludeAll.Clicked += ButtonExcludeAllClicked; buttonIncludeAll.Clicked += ButtonIncludeAllClicked; buttonOk.Clicked += ButtonOkClicked; }
GenerateCodeWindow(CodeGenerationOptions options, MonoDevelop.Ide.CodeCompletion.CodeCompletionContext completionContext) : base(Gtk.WindowType.Toplevel) { this.options = options; this.Build(); scrolledwindow1.Child = treeviewGenerateActions; scrolledwindow1.ShowAll(); scrolledwindow2.Child = treeviewSelection; scrolledwindow2.ShowAll(); treeviewGenerateActions.Cancel += delegate { Destroy(); }; treeviewGenerateActions.Submit += delegate { treeviewSelection.GrabFocus(); }; treeviewSelection.Cancel += delegate { treeviewGenerateActions.GrabFocus(); }; treeviewSelection.Submit += delegate { if (curInitializeObject != null) { curInitializeObject.GenerateCode(); curInitializeObject = null; } Destroy(); }; WindowTransparencyDecorator.Attach(this); treeviewSelection.HeadersVisible = false; treeviewGenerateActions.HeadersVisible = false; treeviewGenerateActions.Model = generateActionsStore; TreeViewColumn column = new TreeViewColumn(); var pixbufRenderer = new CellRendererImage(); column.PackStart(pixbufRenderer, false); column.AddAttribute(pixbufRenderer, "image", 0); CellRendererText textRenderer = new CellRendererText(); column.PackStart(textRenderer, true); column.AddAttribute(textRenderer, "text", 1); column.Expand = true; treeviewGenerateActions.AppendColumn(column); treeviewGenerateActions.Selection.Changed += TreeviewGenerateActionsSelectionChanged; this.Remove(this.vbox1); BorderBox messageArea = new BorderBox(); messageArea.Add(vbox1); this.Add(messageArea); this.ShowAll(); int x = completionContext.TriggerXCoord; int y = completionContext.TriggerYCoord; int w, h; GetSize(out w, out h); int myMonitor = Screen.GetMonitorAtPoint(x, y); Gdk.Rectangle geometry = DesktopService.GetUsableMonitorGeometry(Screen, myMonitor); if (x + w > geometry.Right) { x = geometry.Right - w; } if (y + h > geometry.Bottom) { y = y - completionContext.TriggerTextHeight - h; } Move(x, y); }
public LogWidget(VersionControlDocumentInfo info) { this.Build(); this.info = info; if (info.Document != null) { this.preselectFile = info.Item.Path; } var separator = new HeaderBox(); separator.SetMargins(1, 0, 0, 0); separator.HeightRequest = 4; separator.ShowAll(); hpaned1 = hpaned1.ReplaceWithWidget(new HPanedThin(), true); vpaned1 = vpaned1.ReplaceWithWidget(new VPanedThin() { HandleWidget = separator }, true); revertButton = new DocumentToolButton("vc-revert-command", GettextCatalog.GetString("Revert changes from this revision")); revertButton.GetNativeWidget <Gtk.Widget> ().Sensitive = false; revertButton.Clicked += new EventHandler(RevertRevisionClicked); revertToButton = new DocumentToolButton("vc-revert-command", GettextCatalog.GetString("Revert to this revision")); revertToButton.GetNativeWidget <Gtk.Widget> ().Sensitive = false; revertToButton.Clicked += new EventHandler(RevertToRevisionClicked); refreshButton = new DocumentToolButton(Gtk.Stock.Refresh, GettextCatalog.GetString("Refresh")); refreshButton.Clicked += new EventHandler(RefreshClicked); searchEntry = new SearchEntry(); searchEntry.WidthRequest = 200; searchEntry.ForceFilterButtonVisible = true; searchEntry.EmptyMessage = GettextCatalog.GetString("Search"); searchEntry.Changed += HandleSearchEntryFilterChanged; searchEntry.Ready = true; searchEntry.Show(); messageRenderer.Ellipsize = Pango.EllipsizeMode.End; TreeViewColumn colRevMessage = new TreeViewColumn(); colRevMessage.Title = GettextCatalog.GetString("Message"); var graphRenderer = new RevisionGraphCellRenderer(); colRevMessage.PackStart(graphRenderer, false); colRevMessage.SetCellDataFunc(graphRenderer, GraphFunc); colRevMessage.PackStart(messageRenderer, true); colRevMessage.SetCellDataFunc(messageRenderer, MessageFunc); colRevMessage.Sizing = TreeViewColumnSizing.Autosize; treeviewLog.AppendColumn(colRevMessage); colRevMessage.MinWidth = 350; colRevMessage.Resizable = true; TreeViewColumn colRevDate = new TreeViewColumn(GettextCatalog.GetString("Date"), textRenderer); colRevDate.SetCellDataFunc(textRenderer, DateFunc); colRevDate.Resizable = true; treeviewLog.AppendColumn(colRevDate); TreeViewColumn colRevAuthor = new TreeViewColumn(); colRevAuthor.Title = GettextCatalog.GetString("Author"); colRevAuthor.PackStart(pixRenderer, false); colRevAuthor.PackStart(textRenderer, true); colRevAuthor.SetCellDataFunc(textRenderer, AuthorFunc); colRevAuthor.SetCellDataFunc(pixRenderer, AuthorIconFunc); colRevAuthor.Resizable = true; treeviewLog.AppendColumn(colRevAuthor); TreeViewColumn colRevNum = new TreeViewColumn(GettextCatalog.GetString("Revision"), textRenderer); colRevNum.SetCellDataFunc(textRenderer, RevisionFunc); colRevNum.Resizable = true; treeviewLog.AppendColumn(colRevNum); treeviewLog.Model = logstore; treeviewLog.Selection.Changed += TreeSelectionChanged; treeviewFiles = new FileTreeView(); treeviewFiles.DiffLineActivated += HandleTreeviewFilesDiffLineActivated; scrolledwindowFiles.Child = treeviewFiles; scrolledwindowFiles.ShowAll(); changedpathstore = new TreeStore(typeof(Xwt.Drawing.Image), typeof(string), // icon/file name typeof(Xwt.Drawing.Image), typeof(string), // icon/operation typeof(string), // path typeof(string), // revision path (invisible) typeof(string []) // diff ); TreeViewColumn colChangedFile = new TreeViewColumn(); var crp = new CellRendererImage(); var crt = new CellRendererText(); colChangedFile.Title = GettextCatalog.GetString("File"); colChangedFile.PackStart(crp, false); colChangedFile.PackStart(crt, true); colChangedFile.AddAttribute(crp, "image", 2); colChangedFile.AddAttribute(crt, "text", 3); treeviewFiles.AppendColumn(colChangedFile); TreeViewColumn colOperation = new TreeViewColumn(); colOperation.Title = GettextCatalog.GetString("Operation"); colOperation.PackStart(crp, false); colOperation.PackStart(crt, true); colOperation.AddAttribute(crp, "image", 0); colOperation.AddAttribute(crt, "text", 1); treeviewFiles.AppendColumn(colOperation); TreeViewColumn colChangedPath = new TreeViewColumn(); colChangedPath.Title = GettextCatalog.GetString("Path"); diffRenderer.DrawLeft = true; colChangedPath.PackStart(diffRenderer, true); colChangedPath.SetCellDataFunc(diffRenderer, SetDiffCellData); treeviewFiles.AppendColumn(colChangedPath); treeviewFiles.Model = changedpathstore; treeviewFiles.TestExpandRow += HandleTreeviewFilesTestExpandRow; treeviewFiles.Events |= Gdk.EventMask.PointerMotionMask; textviewDetails.WrapMode = Gtk.WrapMode.Word; labelAuthor.Text = ""; labelDate.Text = ""; labelRevision.Text = ""; vbox2.Remove(scrolledwindow1); HeaderBox tb = new HeaderBox(); tb.Show(); tb.SetMargins(1, 0, 0, 0); tb.ShowTopShadow = true; tb.ShadowSize = 4; tb.SetPadding(8, 8, 8, 8); tb.UseChildBackgroundColor = true; tb.Add(scrolledwindow1); vbox2.PackStart(tb, true, true, 0); UpdateStyle(); Ide.Gui.Styles.Changed += HandleStylesChanged; }
public TestResultsPad() { UnitTestService.TestSuiteChanged += new EventHandler(OnTestSuiteChanged); IdeApp.Workspace.WorkspaceItemClosed += OnWorkspaceItemClosed; panel = new VBox { Name = "testResultBox" }; // Results notebook book = new HPaned(); panel.PackStart(book, true, true, 0); panel.FocusChain = new Gtk.Widget [] { book }; // Failures tree failuresTreeView = new MonoDevelop.Ide.Gui.Components.PadTreeView { Name = "testResultsTree" }; failuresTreeView.HeadersVisible = false; failuresStore = new TreeStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(object), typeof(string), typeof(int), typeof(int)); SemanticModelAttribute modelAttr = new SemanticModelAttribute("store__Image", "store__Message", "store__RootTest", "store__FileName", "store__FileNumber", "store__ErrorOrStackTrace"); TypeDescriptor.AddAttributes(failuresStore, modelAttr); var pr = new CellRendererImage(); CellRendererText tr = new CellRendererText(); TreeViewColumn col = new TreeViewColumn(); col.PackStart(pr, false); col.AddAttribute(pr, "image", 0); col.PackStart(tr, false); col.AddAttribute(tr, "markup", 1); failuresTreeView.AppendColumn(col); failuresTreeView.Model = failuresStore; var sw = new MonoDevelop.Components.CompactScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(failuresTreeView); book.Pack1(sw, true, true); outputView = new MonoDevelop.Ide.Gui.Components.LogView.LogTextView { Name = "testResultOutput" }; outputView.ModifyFont(IdeServices.FontService.MonospaceFont); outputView.Editable = false; bold = new TextTag("bold"); bold.Weight = Pango.Weight.Bold; outputView.Buffer.TagTable.Add(bold); sw = new MonoDevelop.Components.CompactScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(outputView); book.Pack2(sw, true, true); outputViewScrolled = sw; failuresTreeView.RowActivated += OnRowActivated; failuresTreeView.Selection.Changed += OnRowSelected; failuresTreeView.DoPopupMenu = delegate(EventButton evt) { IdeApp.CommandService.ShowContextMenu(failuresTreeView, evt, "/MonoDevelop/UnitTesting/ContextMenu/TestResultsPad"); }; panel.ShowAll(); outputViewScrolled.Hide(); }
public RegexToolkitWidget() { this.Build(); optionsStore = new ListStore(typeof(bool), typeof(string), typeof(Options)); resultStore = new Gtk.TreeStore(typeof(string), typeof(string), typeof(int), typeof(int)); FillOptionsBox(); this.entryRegEx.Changed += UpdateStartButtonSensitivity; this.inputTextview.Buffer.Changed += UpdateStartButtonSensitivity; SetFindMode(true); var cellRendText = new CellRendererText(); cellRendText.Ellipsize = Pango.EllipsizeMode.End; this.optionsTreeview.Model = this.optionsStore; this.optionsTreeview.HeadersVisible = false; CellRendererToggle cellRendToggle = new CellRendererToggle(); cellRendToggle.Toggled += new ToggledHandler(OptionToggled); cellRendToggle.Activatable = true; this.optionsTreeview.AppendColumn("", cellRendToggle, "active", 0); this.optionsTreeview.AppendColumn("", cellRendText, "text", 1); this.resultsTreeview.Model = this.resultStore; this.resultsTreeview.HeadersVisible = false; var col = new TreeViewColumn(); this.resultsTreeview.AppendColumn(col); var pix = new CellRendererImage(); col.PackStart(pix, false); col.AddAttribute(pix, "stock_id", 0); col.PackStart(cellRendText, true); col.AddAttribute(cellRendText, "text", 1); this.resultsTreeview.RowActivated += delegate(object sender, RowActivatedArgs e) { Gtk.TreeIter iter; if (resultStore.GetIter(out iter, e.Path)) { int index = (int)resultStore.GetValue(iter, 2); int length = (int)resultStore.GetValue(iter, 3); if (index >= 0) { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(index), this.inputTextview.Buffer.GetIterAtOffset(index + length)); } else { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(0), this.inputTextview.Buffer.GetIterAtOffset(0)); } } }; this.entryReplace.Sensitive = this.checkbuttonReplace.Active = false; this.entryReplace.Changed += delegate { UpdateRegex(); }; this.checkbuttonReplace.Toggled += delegate { this.entryReplace.Sensitive = this.checkbuttonReplace.Active; UpdateRegex(); }; this.expandMatches.Toggled += delegate { UpdateRegex(); }; this.vbox4.WidthRequest = 380; this.scrolledwindow5.HeightRequest = 150; this.scrolledwindow1.HeightRequest = 150; Show(); }
public TranslationProjectOptionsDialog(TranslationProject project) { this.project = project; this.Build(); entryPackageName.Text = project.PackageName; entryRelPath.Text = project.RelPath; radiobuttonRelPath.Active = project.OutputType == TranslationOutputType.RelativeToOutput; radiobuttonSystemPath.Active = project.OutputType == TranslationOutputType.SystemPath; entryPackageName.Changed += new EventHandler(UpdateInitString); entryRelPath.Changed += new EventHandler(UpdateInitString); radiobuttonRelPath.Activated += new EventHandler(UpdateInitString); radiobuttonSystemPath.Activated += new EventHandler(UpdateInitString); UpdateInitString(this, EventArgs.Empty); this.buttonOk.Clicked += delegate { project.PackageName = entryPackageName.Text; project.RelPath = entryRelPath.Text; if (radiobuttonRelPath.Active) { project.OutputType = TranslationOutputType.RelativeToOutput; } else { project.OutputType = TranslationOutputType.SystemPath; } this.Destroy(); }; this.buttonCancel.Clicked += delegate { this.Destroy(); }; store = new TreeStore(typeof(string), typeof(bool), typeof(string), typeof(SolutionFolderItem), typeof(bool)); treeviewProjectList.Model = store; treeviewProjectList.HeadersVisible = false; TreeViewColumn col = new TreeViewColumn(); CellRendererToggle cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Toggled += new ToggledHandler(ActiveToggled); cellRendererToggle.Activatable = true; col.PackStart(cellRendererToggle, false); col.AddAttribute(cellRendererToggle, "active", 1); col.AddAttribute(cellRendererToggle, "visible", 4); CellRendererImage crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "stock_id", 0); CellRendererText crt = new CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", 2); treeviewProjectList.AppendColumn(col); FillTree(TreeIter.Zero, project.ParentSolution.RootFolder); }
public CSharpFormattingProfileDialog(CSharpFormattingPolicy profile) { // ReSharper disable once DoNotCallOverridableMethodsInConstructor this.Build(); this.profile = profile; this.Title = profile.IsBuiltIn ? GettextCatalog.GetString("Show built-in profile") : GettextCatalog.GetString("Edit Profile"); notebookCategories.SwitchPage += delegate { TreeView treeView; switch (notebookCategories.Page) { case 0: treeView = treeviewIndentOptions; break; case 1: treeView = treeviewNewLines; break; case 2: // Blank lines treeView = treeviewSpacing; break; case 3: treeView = treeviewWrapping; break; default: return; } TreeModel model; TreeIter iter; if (treeView.Selection.GetSelected(out model, out iter)) { UpdateExample(model, iter); } }; notebookCategories.ShowTabs = false; comboboxCategories.AppendText(GettextCatalog.GetString("Indentation")); comboboxCategories.AppendText(GettextCatalog.GetString("New Lines")); comboboxCategories.AppendText(GettextCatalog.GetString("Spacing")); // comboboxCategories.AppendText (GettextCatalog.GetString ("Style")); comboboxCategories.AppendText(GettextCatalog.GetString("Wrapping")); comboboxCategories.Changed += delegate { texteditor.Text = ""; notebookCategories.Page = comboboxCategories.Active; }; comboboxCategories.Active = 0; var options = DefaultSourceEditorOptions.Instance; texteditor.Options = DefaultSourceEditorOptions.PlainEditor; texteditor.IsReadOnly = true; texteditor.MimeType = CSharpFormatter.MimeType; scrolledwindow.Child = texteditor; ShowAll(); #region Indent options indentationOptions = new TreeStore(typeof(string), typeof(string), typeof(string), typeof(bool), typeof(bool)); var column = new TreeViewColumn(); // pixbuf column var pixbufCellRenderer = new CellRendererImage(); column.PackStart(pixbufCellRenderer, false); column.SetCellDataFunc(pixbufCellRenderer, RenderIcon); // text column var cellRendererText = new CellRendererText(); cellRendererText.Ypad = 1; column.PackStart(cellRendererText, true); column.SetAttributes(cellRendererText, "text", 1); treeviewIndentOptions.Model = indentationOptions; treeviewIndentOptions.HeadersVisible = false; treeviewIndentOptions.Selection.Changed += TreeSelectionChanged; treeviewIndentOptions.AppendColumn(column); column = new TreeViewColumn(); var cellRendererCombo = new CellRendererCombo(); cellRendererCombo.Ypad = 1; cellRendererCombo.Mode = CellRendererMode.Editable; cellRendererCombo.TextColumn = 1; cellRendererCombo.Model = ComboBoxStore; cellRendererCombo.HasEntry = false; cellRendererCombo.Editable = !profile.IsBuiltIn; cellRendererCombo.Edited += new ComboboxEditedHandler(this, indentationOptions).ComboboxEdited; column.PackStart(cellRendererCombo, false); column.SetAttributes(cellRendererCombo, "visible", comboVisibleColumn); column.SetCellDataFunc(cellRendererCombo, ComboboxDataFunc); var cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Ypad = 1; cellRendererToggle.Activatable = !profile.IsBuiltIn; cellRendererToggle.Toggled += new CellRendererToggledHandler(this, treeviewIndentOptions, indentationOptions).Toggled; column.PackStart(cellRendererToggle, false); column.SetAttributes(cellRendererToggle, "visible", toggleVisibleColumn); column.SetCellDataFunc(cellRendererToggle, ToggleDataFunc); treeviewIndentOptions.AppendColumn(column); AddOption(indentationOptions, "IndentBlock", GettextCatalog.GetString("Indent block contents"), "namespace Test { class AClass { void Method () { int x; int y; } } }"); AddOption(indentationOptions, "IndentBraces", GettextCatalog.GetString("Indent open and close braces"), "class AClass { int aField; void AMethod () {}}"); AddOption(indentationOptions, "IndentSwitchSection", GettextCatalog.GetString("Indent case contents"), "class AClass { void Method (int x) { switch (x) { case 1: break; } } }"); AddOption(indentationOptions, "IndentSwitchCaseSection", GettextCatalog.GetString("Indent case labels"), "class AClass { void Method (int x) { switch (x) { case 1: break; } } }"); AddOption(indentationOptions, "LabelPositioning", GettextCatalog.GetString("Label indentation"), "enum AEnum { A, B, C }"); treeviewIndentOptions.ExpandAll(); #endregion #region New line options newLineOptions = new TreeStore(typeof(string), typeof(string), typeof(string), typeof(bool), typeof(bool)); column = new TreeViewColumn(); // pixbuf column column.PackStart(pixbufCellRenderer, false); column.SetCellDataFunc(pixbufCellRenderer, RenderIcon); // text column cellRendererText = new CellRendererText(); cellRendererText.Ypad = 1; column.PackStart(cellRendererText, true); column.SetAttributes(cellRendererText, "text", 1); treeviewNewLines.Model = newLineOptions; treeviewNewLines.HeadersVisible = false; treeviewNewLines.Selection.Changed += TreeSelectionChanged; treeviewNewLines.AppendColumn(column); column = new TreeViewColumn(); cellRendererCombo = new CellRendererCombo(); cellRendererCombo.Ypad = 1; cellRendererCombo.Mode = CellRendererMode.Editable; cellRendererCombo.TextColumn = 1; cellRendererCombo.Model = ComboBoxStore; cellRendererCombo.HasEntry = false; cellRendererCombo.Editable = !profile.IsBuiltIn; cellRendererCombo.Edited += new ComboboxEditedHandler(this, newLineOptions).ComboboxEdited; column.PackStart(cellRendererCombo, false); column.SetAttributes(cellRendererCombo, "visible", comboVisibleColumn); column.SetCellDataFunc(cellRendererCombo, ComboboxDataFunc); cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Activatable = !profile.IsBuiltIn; cellRendererToggle.Ypad = 1; cellRendererToggle.Toggled += new CellRendererToggledHandler(this, treeviewNewLines, newLineOptions).Toggled; column.PackStart(cellRendererToggle, false); column.SetAttributes(cellRendererToggle, "visible", toggleVisibleColumn); column.SetCellDataFunc(cellRendererToggle, ToggleDataFunc); treeviewNewLines.AppendColumn(column); var category = AddOption(newLineOptions, null, GettextCatalog.GetString("New line options for braces"), null); AddOption(newLineOptions, category, "NewLinesForBracesInTypes", GettextCatalog.GetString("Place open brace on new line for types"), @"class Example { }"); AddOption(newLineOptions, category, "NewLinesForBracesInMethods", GettextCatalog.GetString("Place open brace on new line for methods"), @"void Example() { }"); AddOption(newLineOptions, category, "NewLinesForBracesInProperties", GettextCatalog.GetString("Place open brace on new line for properties"), @"int Example { get { return 1; } set { // nothing } } " ); AddOption(newLineOptions, category, "NewLinesForBracesInAccessors", GettextCatalog.GetString("Place open brace on new line for property accessors"), @"int Example { get { return 1; } set { // nothing } } " ); AddOption(newLineOptions, category, "NewLinesForBracesInAnonymousMethods", GettextCatalog.GetString("Place open brace on new line for anonymous methods"), @"void Example() { var del = new delegate (int i, int j) { }; }"); AddOption(newLineOptions, category, "NewLinesForBracesInControlBlocks", GettextCatalog.GetString("Place open brace on new line for control blocks"), @"void Example() { if (true) { } }"); AddOption(newLineOptions, category, "NewLinesForBracesInAnonymousTypes", GettextCatalog.GetString("Place open brace on new line for anonymous types"), @"void Example() { var c = new { A = 1, B = 2 }; }"); AddOption(newLineOptions, category, "NewLinesForBracesInObjectCollectionArrayInitializers", GettextCatalog.GetString("Place open brace on new line for object initializers"), @"void Example() { new MyObject { A = 1, B = 2 }; }"); AddOption(newLineOptions, category, "NewLinesForBracesInLambdaExpressionBody", GettextCatalog.GetString("Place open brace on new line for lambda expression"), @"void Example() { Action act = () => { }; }"); category = AddOption(newLineOptions, null, GettextCatalog.GetString("New line options for keywords"), null); AddOption(newLineOptions, category, "NewLineForElse", GettextCatalog.GetString("Place \"else\" on new line"), @"void Example() { if (true) { // ... } else { // ... } }"); AddOption(newLineOptions, category, "NewLineForCatch", GettextCatalog.GetString("Place \"catch\" on new line"), @"void Example() { try { } catch { } finally { } }"); AddOption(newLineOptions, category, "NewLineForFinally", GettextCatalog.GetString("Place \"finally\" on new line"), @"void Example() { try { } catch { } finally { } }"); category = AddOption(newLineOptions, null, GettextCatalog.GetString("New line options for expressions"), null); AddOption(newLineOptions, category, "NewLineForMembersInObjectInit", GettextCatalog.GetString("Place members in object initializers on new line"), @"void Example() { new MyObject { A = 1, B = 2 }; }"); AddOption(newLineOptions, category, "NewLineForMembersInAnonymousTypes", GettextCatalog.GetString("Place members in anonymous types on new line"), @"void Example() { var c = new { A = 1, B = 2 }; }"); AddOption(newLineOptions, category, "NewLineForClausesInQuery", GettextCatalog.GetString("Place query expression clauses on new line"), @"void Example() { from o in col select o.Foo; }"); treeviewNewLines.ExpandAll(); #endregion #region Spacing options spacingOptions = new TreeStore(typeof(string), typeof(string), typeof(string), typeof(bool), typeof(bool)); column = new TreeViewColumn(); // pixbuf column column.PackStart(pixbufCellRenderer, false); column.SetCellDataFunc(pixbufCellRenderer, RenderIcon); // text column cellRendererText.Ypad = 1; column.PackStart(cellRendererText, true); column.SetAttributes(cellRendererText, "text", 1); treeviewSpacing.Model = spacingOptions; treeviewSpacing.HeadersVisible = false; treeviewSpacing.Selection.Changed += TreeSelectionChanged; treeviewSpacing.AppendColumn(column); column = new TreeViewColumn(); cellRendererCombo = new CellRendererCombo(); cellRendererCombo.Ypad = 1; cellRendererCombo.Mode = CellRendererMode.Editable; cellRendererCombo.TextColumn = 1; cellRendererCombo.Model = ComboBoxStore; cellRendererCombo.HasEntry = false; cellRendererCombo.Editable = !profile.IsBuiltIn; cellRendererCombo.Edited += new ComboboxEditedHandler(this, spacingOptions).ComboboxEdited; column.PackStart(cellRendererCombo, false); column.SetAttributes(cellRendererCombo, "visible", comboVisibleColumn); column.SetCellDataFunc(cellRendererCombo, ComboboxDataFunc); cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Activatable = !profile.IsBuiltIn; cellRendererToggle.Ypad = 1; cellRendererToggle.Toggled += new CellRendererToggledHandler(this, treeviewSpacing, spacingOptions).Toggled; column.PackStart(cellRendererToggle, false); column.SetAttributes(cellRendererToggle, "visible", toggleVisibleColumn); column.SetCellDataFunc(cellRendererToggle, ToggleDataFunc); treeviewSpacing.AppendColumn(column); category = AddOption(spacingOptions, null, GettextCatalog.GetString("Set spacing for method declarations"), null); AddOption(spacingOptions, category, "SpacingAfterMethodDeclarationName", GettextCatalog.GetString("Insert space between method name and its opening parenthesis"), @"void Example() { }"); AddOption(spacingOptions, category, "SpaceWithinMethodDeclarationParenthesis", GettextCatalog.GetString("Insert space withing argument list parentheses"), @"void Example(int i, int j) { }"); AddOption(spacingOptions, category, "SpaceBetweenEmptyMethodDeclarationParentheses", GettextCatalog.GetString("Insert space within empty argument list parentheses"), @"void Example() { }"); category = AddOption(spacingOptions, null, GettextCatalog.GetString("Set spacing for method calls"), null); AddOption(spacingOptions, category, "SpaceAfterMethodCallName", GettextCatalog.GetString("Insert space between method name and its opening parenthesis"), @"void Example() { Test(); }"); AddOption(spacingOptions, category, "SpaceWithinMethodCallParentheses", GettextCatalog.GetString("Insert space withing argument list parentheses"), @"void Example() { Test(1, 2); }"); AddOption(spacingOptions, category, "SpaceBetweenEmptyMethodCallParentheses", GettextCatalog.GetString("Insert space within empty argument list parentheses"), @"void Example() { Test(); }"); category = AddOption(spacingOptions, null, GettextCatalog.GetString("Set other spacing options"), null); AddOption(spacingOptions, category, "SpaceAfterControlFlowStatementKeyword", GettextCatalog.GetString("Insert space after keywords in control flow statements"), @"void Example() { if (condition) { } }"); AddOption(spacingOptions, category, "SpaceWithinExpressionParentheses", GettextCatalog.GetString("Insert space within parentheses of expressions"), @"void Example() { i = (5 + 3) * 2; }"); AddOption(spacingOptions, category, "SpaceWithinCastParentheses", GettextCatalog.GetString("Insert space within parentheses of type casts"), @"void Example() { test = (ITest)o; }"); AddOption(spacingOptions, category, "SpaceWithinOtherParentheses", GettextCatalog.GetString("Insert space within parentheses of control flow statements"), @"void Example() { if (condition) { } }"); AddOption(spacingOptions, category, "SpaceAfterCast", GettextCatalog.GetString("Insert space after casts"), @"void Example() { test = (ITest)o; }"); AddOption(spacingOptions, category, "SpacesIgnoreAroundVariableDeclaration", GettextCatalog.GetString("Ignore spaces in declaration statements"), @"void Example() { int x=5; }"); category = AddOption(spacingOptions, null, GettextCatalog.GetString("Set spacing for brackets"), null); AddOption(spacingOptions, category, "SpaceBeforeOpenSquareBracket", GettextCatalog.GetString("Insert space before open square bracket"), @"void Example() { i[5] = 3; }"); AddOption(spacingOptions, category, "SpaceBetweenEmptySquareBrackets", GettextCatalog.GetString("Insert space within empty square brackets"), @"void Example() { new int[] {1, 2}; }"); AddOption(spacingOptions, category, "SpaceWithinSquareBrackets", GettextCatalog.GetString("Insert space within square brackets"), @"void Example() { i[5] = 3; }"); category = AddOption(spacingOptions, null, GettextCatalog.GetString("Set spacing for brackets"), null); AddOption(spacingOptions, category, "SpaceAfterColonInBaseTypeDeclaration", GettextCatalog.GetString("Insert space after colon for base or interface in type declaration"), @"class Foo : Bar { }"); AddOption(spacingOptions, category, "SpaceAfterComma", GettextCatalog.GetString("Insert space after comma"), @"void Example() { for (int i =0; i < 10, i >5;i++) { } }"); AddOption(spacingOptions, category, "SpaceAfterDot", GettextCatalog.GetString("Insert space after dot"), @"void Example() { Foo.Bar.Test(); }"); AddOption(spacingOptions, category, "SpaceAfterSemicolonsInForStatement", GettextCatalog.GetString("Insert space after semicolon in \"for\" statement"), @"void Example() { for (int i = 0; i< 10; i++) { } }"); AddOption(spacingOptions, category, "SpaceBeforeColonInBaseTypeDeclaration", GettextCatalog.GetString("Insert space before colon for base or interface in type declaration"), @"class Foo : Bar { }"); AddOption(spacingOptions, category, "SpaceBeforeComma", GettextCatalog.GetString("Insert space before comma"), @"void Example() { for (int i =0; i < 10, i >5;i++) { } }"); AddOption(spacingOptions, category, "SpaceBeforeDot", GettextCatalog.GetString("Insert space before dot"), @"void Example() { Foo.Bar.Test(); }"); AddOption(spacingOptions, category, "SpaceBeforeSemicolonsInForStatement", GettextCatalog.GetString("Insert space before semicolon in \"for\" statement"), @"void Example() { for (int i = 0; i< 10; i++) { } }"); AddOption(spacingOptions, category, "SpacingAroundBinaryOperator", GettextCatalog.GetString("Set spacing for operators"), @"void Example() { i = (5 + 3) * 2; }"); treeviewSpacing.ExpandAll(); #endregion #region Style options styleOptions = new TreeStore(typeof(string), typeof(string), typeof(string), typeof(bool), typeof(bool)); column = new TreeViewColumn(); // pixbuf column column.PackStart(pixbufCellRenderer, false); column.SetCellDataFunc(pixbufCellRenderer, RenderIcon); // text column cellRendererText.Ypad = 1; column.PackStart(cellRendererText, true); column.SetAttributes(cellRendererText, "text", 1); treeviewStyle.Model = styleOptions; treeviewStyle.HeadersVisible = false; treeviewStyle.Selection.Changed += TreeSelectionChanged; treeviewStyle.AppendColumn(column); column = new TreeViewColumn(); cellRendererCombo = new CellRendererCombo(); cellRendererCombo.Ypad = 1; cellRendererCombo.Mode = CellRendererMode.Editable; cellRendererCombo.TextColumn = 1; cellRendererCombo.Model = ComboBoxStore; cellRendererCombo.HasEntry = false; cellRendererCombo.Editable = !profile.IsBuiltIn; cellRendererCombo.Edited += new ComboboxEditedHandler(this, styleOptions).ComboboxEdited; column.PackStart(cellRendererCombo, false); column.SetAttributes(cellRendererCombo, "visible", comboVisibleColumn); column.SetCellDataFunc(cellRendererCombo, ComboboxDataFunc); cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Activatable = !profile.IsBuiltIn; cellRendererToggle.Ypad = 1; cellRendererToggle.Toggled += new CellRendererToggledHandler(this, treeviewSpacing, styleOptions).Toggled; column.PackStart(cellRendererToggle, false); column.SetAttributes(cellRendererToggle, "visible", toggleVisibleColumn); column.SetCellDataFunc(cellRendererToggle, ToggleDataFunc); treeviewStyle.AppendColumn(column); AddOption(styleOptions, category, null, GettextCatalog.GetString("Qualify member access with 'this'"), null); AddOption(styleOptions, category, null, GettextCatalog.GetString("Use 'var' when generating locals"), null); treeviewStyle.ExpandAll(); #endregion #region Wrapping options wrappingOptions = new TreeStore(typeof(string), typeof(string), typeof(string), typeof(bool), typeof(bool)); column = new TreeViewColumn(); // pixbuf column column.PackStart(pixbufCellRenderer, false); column.SetCellDataFunc(pixbufCellRenderer, RenderIcon); // text column cellRendererText.Ypad = 1; column.PackStart(cellRendererText, true); column.SetAttributes(cellRendererText, "text", 1); treeviewWrapping.Model = wrappingOptions; treeviewWrapping.HeadersVisible = false; treeviewWrapping.Selection.Changed += TreeSelectionChanged; treeviewWrapping.AppendColumn(column); column = new TreeViewColumn(); cellRendererCombo = new CellRendererCombo(); cellRendererCombo.Ypad = 1; cellRendererCombo.Mode = CellRendererMode.Editable; cellRendererCombo.TextColumn = 1; cellRendererCombo.Model = ComboBoxStore; cellRendererCombo.HasEntry = false; cellRendererCombo.Editable = !profile.IsBuiltIn; cellRendererCombo.Edited += new ComboboxEditedHandler(this, wrappingOptions).ComboboxEdited; column.PackStart(cellRendererCombo, false); column.SetAttributes(cellRendererCombo, "visible", comboVisibleColumn); column.SetCellDataFunc(cellRendererCombo, ComboboxDataFunc); cellRendererToggle = new CellRendererToggle(); cellRendererToggle.Activatable = !profile.IsBuiltIn; cellRendererToggle.Ypad = 1; cellRendererToggle.Toggled += new CellRendererToggledHandler(this, treeviewSpacing, wrappingOptions).Toggled; column.PackStart(cellRendererToggle, false); column.SetAttributes(cellRendererToggle, "visible", toggleVisibleColumn); column.SetCellDataFunc(cellRendererToggle, ToggleDataFunc); treeviewWrapping.AppendColumn(column); AddOption(wrappingOptions, "WrappingPreserveSingleLine", GettextCatalog.GetString("Leave block on single line"), ""); AddOption(wrappingOptions, "WrappingKeepStatementsOnSingleLine", GettextCatalog.GetString("Leave statements and member declarations on the same line"), ""); treeviewWrapping.ExpandAll(); #endregion }
public override void Initialize(NodeBuilder[] builders, TreePadOption[] options, string menuPath) { base.Initialize(builders, options, menuPath); testChangedHandler = (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnDetailsTestChanged)); testService.TestSuiteChanged += (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnTestSuiteChanged)); paned = new VPaned(); VBox vbox = new VBox(); DockItemToolbar topToolbar = Window.GetToolbar(PositionType.Top); var hbox = new HBox { Spacing = 6 }; hbox.PackStart(new ImageView(ImageService.GetIcon("nunit-run", IconSize.Menu)), false, false, 0); hbox.PackStart(new Label(GettextCatalog.GetString("Run All")), false, false, 0); buttonRunAll = new Button(hbox); buttonRunAll.Clicked += new EventHandler(OnRunAllClicked); buttonRunAll.Sensitive = true; buttonRunAll.TooltipText = GettextCatalog.GetString("Run all tests"); topToolbar.Add(buttonRunAll); buttonStop = new Button(new Gtk.Image(Ide.Gui.Stock.Stop, IconSize.Menu)); buttonStop.Clicked += new EventHandler(OnStopClicked); buttonStop.Sensitive = false; buttonStop.TooltipText = GettextCatalog.GetString("Cancel running test"); topToolbar.Add(buttonStop); topToolbar.ShowAll(); vbox.PackEnd(base.Control, true, true, 0); vbox.FocusChain = new Gtk.Widget [] { base.Control }; paned.Pack1(vbox, true, true); detailsPad = new VBox(); EventBox eb = new EventBox(); HBox header = new HBox(); eb.Add(header); detailLabel = new HeaderLabel(); detailLabel.Padding = 6; Button hb = new Button(new Gtk.Image("gtk-close", IconSize.SmallToolbar)); hb.Relief = ReliefStyle.None; hb.Clicked += new EventHandler(OnCloseDetails); header.PackEnd(hb, false, false, 0); hb = new Button(new Gtk.Image("gtk-go-back", IconSize.SmallToolbar)); hb.Relief = ReliefStyle.None; hb.Clicked += new EventHandler(OnGoBackTest); header.PackEnd(hb, false, false, 0); header.Add(detailLabel); Gdk.Color hcol = eb.Style.Background(StateType.Normal); hcol.Red = (ushort)(((double)hcol.Red) * 0.9); hcol.Green = (ushort)(((double)hcol.Green) * 0.9); hcol.Blue = (ushort)(((double)hcol.Blue) * 0.9); // eb.ModifyBg (StateType.Normal, hcol); detailsPad.PackStart(eb, false, false, 0); VPaned panedDetails = new VPaned(); panedDetails.BorderWidth = 3; VBox boxPaned1 = new VBox(); chart = new TestChart(); chart.ButtonPressEvent += OnChartButtonPress; chart.SelectionChanged += new EventHandler(OnChartDateChanged); chart.HeightRequest = 50; Toolbar toolbar = new Toolbar(); toolbar.IconSize = IconSize.SmallToolbar; toolbar.ToolbarStyle = ToolbarStyle.Icons; toolbar.ShowArrow = false; ToolButton but = new ToolButton("gtk-zoom-in"); but.Clicked += new EventHandler(OnZoomIn); toolbar.Insert(but, -1); but = new ToolButton("gtk-zoom-out"); but.Clicked += new EventHandler(OnZoomOut); toolbar.Insert(but, -1); but = new ToolButton("gtk-go-back"); but.Clicked += new EventHandler(OnChartBack); toolbar.Insert(but, -1); but = new ToolButton("gtk-go-forward"); but.Clicked += new EventHandler(OnChartForward); toolbar.Insert(but, -1); but = new ToolButton("gtk-goto-last"); but.Clicked += new EventHandler(OnChartLast); toolbar.Insert(but, -1); boxPaned1.PackStart(toolbar, false, false, 0); boxPaned1.PackStart(chart, true, true, 0); panedDetails.Pack1(boxPaned1, false, false); // Detailed test information -------- infoBook = new ButtonNotebook(); infoBook.PageLoadRequired += new EventHandler(OnPageLoadRequired); // Info - Group summary Frame tf = new Frame(); ScrolledWindow sw = new ScrolledWindow(); detailsTree = new TreeView(); detailsTree.HeadersVisible = true; detailsTree.RulesHint = true; detailsStore = new ListStore(typeof(object), typeof(string), typeof(string), typeof(string), typeof(string)); CellRendererText trtest = new CellRendererText(); CellRendererText tr; TreeViewColumn col3 = new TreeViewColumn(); col3.Expand = false; // col3.Alignment = 0.5f; col3.Widget = new ImageView(TestStatusIcon.Success); col3.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col3.PackStart(tr, false); col3.AddAttribute(tr, "markup", 2); detailsTree.AppendColumn(col3); TreeViewColumn col4 = new TreeViewColumn(); col4.Expand = false; // col4.Alignment = 0.5f; col4.Widget = new ImageView(TestStatusIcon.Failure); col4.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col4.PackStart(tr, false); col4.AddAttribute(tr, "markup", 3); detailsTree.AppendColumn(col4); TreeViewColumn col5 = new TreeViewColumn(); col5.Expand = false; // col5.Alignment = 0.5f; col5.Widget = new ImageView(TestStatusIcon.NotRun); col5.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col5.PackStart(tr, false); col5.AddAttribute(tr, "markup", 4); detailsTree.AppendColumn(col5); TreeViewColumn col1 = new TreeViewColumn(); // col1.Resizable = true; // col1.Expand = true; col1.Title = "Test"; col1.PackStart(trtest, true); col1.AddAttribute(trtest, "markup", 1); detailsTree.AppendColumn(col1); detailsTree.Model = detailsStore; sw.Add(detailsTree); tf.Add(sw); tf.ShowAll(); TestSummaryPage = infoBook.AddPage(GettextCatalog.GetString("Summary"), tf); // Info - Regressions list tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); regressionTree = new TreeView(); regressionTree.HeadersVisible = false; regressionTree.RulesHint = true; regressionStore = new ListStore(typeof(object), typeof(string), typeof(Xwt.Drawing.Image)); CellRendererText trtest2 = new CellRendererText(); var pr = new CellRendererImage(); TreeViewColumn col = new TreeViewColumn(); col.PackStart(pr, false); col.AddAttribute(pr, "image", 2); col.PackStart(trtest2, false); col.AddAttribute(trtest2, "markup", 1); regressionTree.AppendColumn(col); regressionTree.Model = regressionStore; sw.Add(regressionTree); tf.ShowAll(); TestRegressionsPage = infoBook.AddPage(GettextCatalog.GetString("Regressions"), tf); // Info - Failed tests list tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); failedTree = new TreeView(); failedTree.HeadersVisible = false; failedTree.RulesHint = true; failedStore = new ListStore(typeof(object), typeof(string), typeof(Xwt.Drawing.Image)); trtest2 = new CellRendererText(); pr = new CellRendererImage(); col = new TreeViewColumn(); col.PackStart(pr, false); col.AddAttribute(pr, "image", 2); col.PackStart(trtest2, false); col.AddAttribute(trtest2, "markup", 1); failedTree.AppendColumn(col); failedTree.Model = failedStore; sw.Add(failedTree); tf.ShowAll(); TestFailuresPage = infoBook.AddPage(GettextCatalog.GetString("Failed tests"), tf); // Info - results tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); resultView = new TextView(); resultView.Editable = false; sw.Add(resultView); tf.ShowAll(); TestResultPage = infoBook.AddPage(GettextCatalog.GetString("Result"), tf); // Info - Output tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); outputView = new TextView(); outputView.Editable = false; sw.Add(outputView); tf.ShowAll(); TestOutputPage = infoBook.AddPage(GettextCatalog.GetString("Output"), tf); panedDetails.Pack2(infoBook, true, true); detailsPad.PackStart(panedDetails, true, true, 0); paned.Pack2(detailsPad, true, true); paned.ShowAll(); infoBook.HidePage(TestResultPage); infoBook.HidePage(TestOutputPage); infoBook.HidePage(TestSummaryPage); infoBook.HidePage(TestRegressionsPage); infoBook.HidePage(TestFailuresPage); detailsPad.Sensitive = false; detailsPad.Hide(); detailsTree.RowActivated += new Gtk.RowActivatedHandler(OnTestActivated); regressionTree.RowActivated += new Gtk.RowActivatedHandler(OnRegressionTestActivated); failedTree.RowActivated += new Gtk.RowActivatedHandler(OnFailedTestActivated); foreach (UnitTest t in testService.RootTests) { TreeView.AddChild(t); } }
public StackTracePadWidget() { this.ShadowType = ShadowType.None; store = new ListStore(typeof(bool), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(Pango.Style), typeof(object), typeof(int), typeof(bool)); SemanticModelAttribute modelAttr = new SemanticModelAttribute("store__Icon", "store__Method", "store_File", "store_Lang", "store_Addr", "store_Foreground", "store_Style", "store_Frame", "store_FrameIndex"); TypeDescriptor.AddAttributes(store, modelAttr); tree = new PadTreeView(store); tree.RulesHint = true; tree.HeadersVisible = true; tree.Selection.Mode = SelectionMode.Multiple; tree.SearchEqualFunc = Search; tree.EnableSearch = true; tree.SearchColumn = 1; tree.DoPopupMenu = ShowPopup; var col = new TreeViewColumn(); var crp = new CellRendererImage(); col.PackStart(crp, false); crp.Image = pointerImage; col.AddAttribute(crp, "visible", IconColumn); tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Name"); col.PackStart(tree.TextRenderer, true); col.AddAttribute(tree.TextRenderer, "text", MethodColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); col.AddAttribute(tree.TextRenderer, "style", StyleColumn); col.Resizable = true; col.Alignment = 0.0f; tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("File"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", FileColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Language"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", LangColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); col.Visible = false; //By default Language column is hidden tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Address"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", AddrColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); col.Visible = false; //By default Address column is hidden tree.AppendColumn(col); Add(tree); LoadColumnsVisibility(); LoadSettings(); ShowAll(); UpdateDisplay(); DebuggingService.CallStackChanged += OnClassStackChanged; DebuggingService.CurrentFrameChanged += OnFrameChanged; DebuggingService.StoppedEvent += OnDebuggingServiceStopped; tree.RowActivated += OnRowActivated; }
public ComponentSelectorDialog(IToolboxConsumer currentConsumer) { using (ProgressMonitor monitor = new MessageDialogProgressMonitor(true, true, false, true)) { index = DesignerSupport.Service.ToolboxService.GetComponentIndex(monitor); } this.Build(); store = new TreeStore(typeof(bool), typeof(string), typeof(string), typeof(string), typeof(string), typeof(Xwt.Drawing.Image), typeof(ItemToolboxNode), typeof(bool), typeof(int)); TreeViewColumn col; col = new TreeViewColumn(); Gtk.CellRendererToggle crt = new CellRendererToggle(); col.PackStart(crt, false); col.AddAttribute(crt, "active", ColChecked); col.AddAttribute(crt, "visible", ColShowCheck); crt.Toggled += OnToggleItem; col.SortColumnId = ColChecked; listView.AppendColumn(col); col = new TreeViewColumn(); col.Spacing = 3; col.Title = GettextCatalog.GetString("Name"); var crp = new CellRendererImage(); CellRendererText crx = new CellRendererText(); crx.Width = 150; col.PackStart(crp, false); col.PackStart(crx, false); col.AddAttribute(crp, "image", ColIcon); col.AddAttribute(crp, "visible", ColShowCheck); col.AddAttribute(crx, "text", ColName); col.AddAttribute(crx, "weight", ColBold); listView.AppendColumn(col); col.Resizable = true; col.SortColumnId = ColName; col = listView.AppendColumn(GettextCatalog.GetString("Library"), new CellRendererText(), "text", ColLibrary); col.Resizable = true; col.SortColumnId = ColLibrary; col = listView.AppendColumn(GettextCatalog.GetString("Location"), new CellRendererText(), "text", ColPath); col.Resizable = true; col.SortColumnId = ColPath; store.SetSortColumnId(ColName, SortType.Ascending); listView.SearchColumn = ColName; listView.Model = store; foreach (ItemToolboxNode it in DesignerSupport.Service.ToolboxService.UserItems) { currentItems [it] = it; } List <string> list = new List <string> (); foreach (ComponentIndexFile ifile in index.Files) { foreach (ItemToolboxNode co in ifile.Components) { if (!list.Contains(co.ItemDomain)) { list.Add(co.ItemDomain); } } } string defaultDomain = null; if (currentConsumer != null) { defaultDomain = currentConsumer.DefaultItemDomain; } comboType.AppendText(GettextCatalog.GetString("All")); comboType.Active = 0; for (int n = 0; n < list.Count; n++) { string s = list [n]; comboType.AppendText(s); if (s == defaultDomain) { comboType.Active = n + 1; } } }
public ProjectFileSelectorDialog(Project project, string defaultFilterName, string defaultFilterPattern, string [] buildActions) { this.project = project; this.defaultFilter = new SelectFileDialogFilter(defaultFilterName, defaultFilterPattern ?? "*"); this.buildActions = buildActions; this.Build(); projBuf = ImageService.GetIcon(project.StockIcon, IconSize.Menu); dirClosedBuf = ImageService.GetIcon(MonoDevelop.Ide.Gui.Stock.ClosedFolder, IconSize.Menu); dirOpenBuf = ImageService.GetIcon(MonoDevelop.Ide.Gui.Stock.OpenFolder, IconSize.Menu); TreeViewColumn projectCol = new TreeViewColumn(); projectCol.Title = GettextCatalog.GetString("Project Folders"); var pixRenderer = new CellRendererImage(); CellRendererText txtRenderer = new CellRendererText(); projectCol.PackStart(pixRenderer, false); projectCol.PackStart(txtRenderer, true); projectCol.SetCellDataFunc(pixRenderer, new TreeCellDataFunc(PixDataFunc)); projectCol.SetCellDataFunc(txtRenderer, new TreeCellDataFunc(TxtDataFunc)); projectTree.Model = dirStore; projectTree.AppendColumn(projectCol); TreeIter projectIter = dirStore.AppendValues("", FilePath.Empty); InitDirs(projectIter); projectTree.ExpandAll(); projectTree.RowActivated += delegate { fileList.GrabFocus(); }; projectTree.KeyPressEvent += ProjectListKeyPressEvent; TreeViewColumn fileCol = new TreeViewColumn(); var filePixRenderer = new CellRendererImage(); fileCol.Title = GettextCatalog.GetString("Files"); fileCol.PackStart(filePixRenderer, false); fileCol.PackStart(txtRenderer, true); fileCol.AddAttribute(filePixRenderer, "image", 1); fileCol.SetCellDataFunc(txtRenderer, new TreeCellDataFunc(TxtFileDataFunc)); fileList.Model = fileStore; fileList.AppendColumn(fileCol); fileList.RowActivated += delegate { TreeIter iter; if (fileList.Selection.GetSelected(out iter)) { Respond(ResponseType.Ok); } }; fileList.KeyPressEvent += FileListKeyPressEvent; fileList.KeyReleaseEvent += FileListKeyReleaseEvent; TreeIter root; if (dirStore.GetIterFirst(out root)) { projectTree.Selection.SelectIter(root); } UpdateFileList(null, null); projectTree.Selection.Changed += UpdateFileList; fileList.Selection.Changed += UpdateSensitivity; this.DefaultResponse = ResponseType.Cancel; this.Modal = true; }
public CommitDialog(ChangeSet changeSet) { Build(); store = new ListStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(string), typeof(bool), typeof(object)); fileList.Model = store; this.changeSet = changeSet; oldMessage = changeSet.GlobalComment; CellRendererText crt = new CellRendererText(); var crp = new CellRendererImage(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.Spacing = 2; colStatus.AddAttribute(crp, "image", 0); colStatus.AddAttribute(crt, "text", 1); CellRendererToggle cellToggle = new CellRendererToggle(); cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); TreeViewColumn colCommit = new TreeViewColumn("", cellToggle, "active", 3); TreeViewColumn colFile = new TreeViewColumn(GettextCatalog.GetString("File"), new CellRendererText(), "text", 2); fileList.AppendColumn(colCommit); fileList.AppendColumn(colStatus); fileList.AppendColumn(colFile); colCommit.Visible = false; object[] exts = AddinManager.GetExtensionObjects("/MonoDevelop/VersionControl/CommitDialogExtensions", false); bool separatorRequired = false; foreach (object ob in exts) { CommitDialogExtension ext = ob as CommitDialogExtension; if (ext == null) { MessageService.ShowError("Commit extension type " + ob.GetType() + " must be a subclass of CommitDialogExtension"); continue; } if (ext.Initialize(changeSet)) { var newTitle = ext.FormatDialogTitle(changeSet, Title); if (newTitle != null) { Title = newTitle; } ext.CommitMessageTextViewHook(textview); if (separatorRequired) { HSeparator sep = new HSeparator(); sep.Show(); vboxExtensions.PackEnd(sep, false, false, 0); } vboxExtensions.PackEnd(ext, false, false, 0); extensions.Add(ext); ext.AllowCommitChanged += HandleAllowCommitChanged; separatorRequired = true; } else { ext.Destroy(); } } HandleAllowCommitChanged(null, null); foreach (ChangeSetItem info in changeSet.Items) { Xwt.Drawing.Image statusicon = VersionControlService.LoadIconForStatus(info.Status); string lstatus = VersionControlService.GetStatusLabel(info.Status); string localpath; if (info.IsDirectory) { localpath = (!info.LocalPath.IsChildPathOf(changeSet.BaseLocalPath)? ".": (string)info.LocalPath.ToRelative(changeSet.BaseLocalPath)); } else { localpath = System.IO.Path.GetFileName((string)info.LocalPath); } if (localpath.Length > 0 && localpath[0] == System.IO.Path.DirectorySeparatorChar) { localpath = localpath.Substring(1); } if (localpath == "") { localpath = "."; } // not sure if this happens store.AppendValues(statusicon, lstatus, localpath, true, info); selected.Add(info.LocalPath); } if (string.IsNullOrEmpty(changeSet.GlobalComment)) { AuthorInformation aInfo; CommitMessageFormat fmt = VersionControlService.GetCommitMessageFormat(changeSet, out aInfo); Message = changeSet.GenerateGlobalComment(fmt, aInfo); } else { Message = changeSet.GlobalComment; } textview.Buffer.Changed += OnTextChanged; responseSensitive = !string.IsNullOrEmpty(Message); // Focus the text view and move the insert point to the beginning. Makes it easier to insert // a comment header. textview.Buffer.MoveMark(textview.Buffer.InsertMark, textview.Buffer.StartIter); textview.Buffer.MoveMark(textview.Buffer.SelectionBound, textview.Buffer.StartIter); textview.GrabFocus(); textview.Buffer.MarkSet += OnMarkSet; SetResponseSensitive(ResponseType.Ok, responseSensitive); }
protected override void Initialize(IPadWindow window) { Id = "MonoDevelop.Debugger.BreakpointPad"; // Toolbar and menu definitions gotoCmd = new ActionCommand(LocalCommands.GoToFile, GettextCatalog.GetString("Go to Breakpoint")); var propertiesCmd = new ActionCommand(LocalCommands.Properties, GettextCatalog.GetString("Edit Breakpoint…"), Stock.Properties); // The toolbar registers the Properties command with the CommandManager for us, // but gotoCmd isn't used in the toolbar so we need to register it ourselves for the menu to work IdeApp.CommandService.RegisterCommand(gotoCmd); menuSet = new CommandEntrySet(); menuSet.Add(propertiesCmd); menuSet.Add(gotoCmd); menuSet.AddSeparator(); menuSet.AddItem(DebugCommands.EnableDisableBreakpoint); menuSet.AddItem(DebugCommands.DisableAllBreakpoints); menuSet.AddSeparator(); menuSet.AddItem(EditCommands.DeleteKey); menuSet.AddItem(DebugCommands.ClearAllBreakpoints); var toolbarSet = new CommandEntrySet(); toolbarSet.AddItem(DebugCommands.EnableDisableBreakpoint); toolbarSet.AddItem(DebugCommands.ClearAllBreakpoints); toolbarSet.AddItem(DebugCommands.DisableAllBreakpoints); toolbarSet.AddItem(EditCommands.Delete); toolbarSet.AddSeparator(); toolbarSet.Add(propertiesCmd); toolbarSet.AddSeparator(); toolbarSet.Add(new CommandEntry(DebugCommands.NewFunctionBreakpoint) { DisplayType = CommandEntryDisplayType.IconAndText }); toolbarSet.Add(new CommandEntry(DebugCommands.NewCatchpoint) { DisplayType = CommandEntryDisplayType.IconAndText }); // The breakpoint list store = new TreeStore(typeof(string), typeof(bool), typeof(string), typeof(object), typeof(string), typeof(string), typeof(string), typeof(string)); var modelAttr = new SemanticModelAttribute("store__Icon", "store__Selected", "store_FileName", "store_Breakpoint", "store_Condition", "store_TraceExp", "store_HitCount", "store_LastTrace"); TypeDescriptor.AddAttributes(store, modelAttr); tree = new PadTreeView(); tree.Model = store; tree.RulesHint = true; tree.HeadersVisible = true; tree.DoPopupMenu = ShowPopup; tree.KeyPressEvent += OnKeyPressEvent; tree.Selection.Mode = SelectionMode.Multiple; treeState = new TreeViewState(tree, (int)Columns.Breakpoint); var col = new TreeViewColumn(); var crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "stock_id", (int)Columns.Icon); tree.AppendColumn(col); var toggleRender = new Gtk.CellRendererToggle(); toggleRender.Toggled += new ToggledHandler(ItemToggled); col = new TreeViewColumn(); col.PackStart(toggleRender, false); col.AddAttribute(toggleRender, "active", (int)Columns.Selected); tree.AppendColumn(col); var FrameCol = new TreeViewColumn(); var crt = tree.TextRenderer; FrameCol.Title = GettextCatalog.GetString("Name"); FrameCol.PackStart(crt, true); FrameCol.AddAttribute(crt, "text", (int)Columns.FileName); FrameCol.Resizable = true; FrameCol.Alignment = 0.0f; tree.AppendColumn(FrameCol); col = tree.AppendColumn(GettextCatalog.GetString("Condition"), crt, "text", (int)Columns.Condition); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Trace Expression"), crt, "text", (int)Columns.TraceExp); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Hit Count"), crt, "text", (int)Columns.HitCount); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Last Trace"), crt, "text", (int)Columns.LastTrace); col.Resizable = true; sw = new Gtk.ScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(tree); control = sw; control.ShowAll(); breakpoints = DebuggingService.Breakpoints; UpdateDisplay(); breakpoints.BreakpointAdded += OnBreakpointAdded; breakpoints.BreakpointRemoved += OnBreakpointRemoved; breakpoints.Changed += OnBreakpointChanged; breakpoints.BreakpointUpdated += OnBreakpointUpdated; DebuggingService.PausedEvent += OnDebuggerStatusCheck; DebuggingService.ResumedEvent += OnDebuggerStatusCheck; DebuggingService.StoppedEvent += OnDebuggerStatusCheck; tree.RowActivated += OnRowActivated; var toolbar = window.GetToolbar(DockPositionType.Top); toolbar.Add(toolbarSet, sw); toolbar.ShowAll(); }
Widget IOutlinedDocument.GetOutlineWidget() { if (outlineTreeView != null) { return(outlineTreeView); } outlineTreeStore = new TreeStore(typeof(object)); outlineTreeModelSort = new TreeModelSort(outlineTreeStore); settings = OutlineSettings.Load(); comparer = new OutlineNodeComparer(new AstAmbience(TypeSystemService.Workspace.Options), settings, outlineTreeModelSort); outlineTreeModelSort.SetSortFunc(0, comparer.CompareNodes); outlineTreeModelSort.SetSortColumnId(0, SortType.Ascending); outlineTreeView = new MonoDevelop.Ide.Gui.Components.PadTreeView(outlineTreeStore); var pixRenderer = new CellRendererImage(); pixRenderer.Xpad = 0; pixRenderer.Ypad = 0; outlineTreeView.TextRenderer.Xpad = 0; outlineTreeView.TextRenderer.Ypad = 0; TreeViewColumn treeCol = new TreeViewColumn(); treeCol.PackStart(pixRenderer, false); treeCol.SetCellDataFunc(pixRenderer, new TreeCellDataFunc(OutlineTreeIconFunc)); treeCol.PackStart(outlineTreeView.TextRenderer, true); treeCol.SetCellDataFunc(outlineTreeView.TextRenderer, new TreeCellDataFunc(OutlineTreeTextFunc)); outlineTreeView.AppendColumn(treeCol); outlineTreeView.HeadersVisible = false; outlineTreeView.Selection.Changed += delegate { JumpToDeclaration(false); }; outlineTreeView.RowActivated += delegate { JumpToDeclaration(true); }; var analysisDocument = DocumentContext.ParsedDocument; if (analysisDocument != null) { lastCU = analysisDocument.GetAst <SemanticModel> (); } outlineTreeView.Realized += delegate { RefillOutlineStore(); }; UpdateSorting(); var sw = new CompactScrolledWindow(); sw.Add(outlineTreeView); sw.ShowAll(); return(sw); }
public EditPackagesDialog(CProject project) { this.Build(); this.project = project; selectedPackages.Project = project; selectedPackages.AddRange(project.Packages); Gtk.CellRendererText textRenderer = new Gtk.CellRendererText(); CellRendererImage pixbufRenderer = new CellRendererImage(); pixbufRenderer.StockId = "md-package"; normalPackageListStore.DefaultSortFunc = NormalPackageCompareNodes; projectPackageListStore.DefaultSortFunc = ProjectPackageCompareNodes; selectedPackageListStore.DefaultSortFunc = SelectedPackageCompareNodes; normalPackageListStore.SetSortColumnId(NormalPackageNameID, Gtk.SortType.Ascending); projectPackageListStore.SetSortColumnId(ProjectPackageNameID, Gtk.SortType.Ascending); selectedPackageListStore.SetSortColumnId(SelectedPackageNameID, Gtk.SortType.Ascending); normalPackageTreeView.SearchColumn = NormalPackageNameID; projectPackageTreeView.SearchColumn = ProjectPackageNameID; selectedPackageTreeView.SearchColumn = SelectedPackageNameID; // <!-- Normal packages --> Gtk.CellRendererToggle normalPackageToggleRenderer = new Gtk.CellRendererToggle(); normalPackageToggleRenderer.Activatable = true; normalPackageToggleRenderer.Toggled += OnNormalPackageToggled; normalPackageToggleRenderer.Xalign = 0; Gtk.TreeViewColumn normalPackageColumn = new Gtk.TreeViewColumn(); normalPackageColumn.Title = "Package"; normalPackageColumn.PackStart(pixbufRenderer, false); normalPackageColumn.PackStart(textRenderer, true); normalPackageColumn.AddAttribute(textRenderer, "text", NormalPackageNameID); normalPackageTreeView.Model = normalPackageListStore; normalPackageTreeView.HeadersVisible = true; normalPackageTreeView.AppendColumn("", normalPackageToggleRenderer, "active", NormalPackageToggleID); normalPackageTreeView.AppendColumn(normalPackageColumn); normalPackageTreeView.AppendColumn("Version", textRenderer, "text", NormalPackageVersionID); // <!-- Project packages --> Gtk.CellRendererToggle projectPackageToggleRenderer = new Gtk.CellRendererToggle(); projectPackageToggleRenderer.Activatable = true; projectPackageToggleRenderer.Toggled += OnProjectPackageToggled; projectPackageToggleRenderer.Xalign = 0; Gtk.TreeViewColumn projectPackageColumn = new Gtk.TreeViewColumn(); projectPackageColumn.Title = "Package"; projectPackageColumn.PackStart(pixbufRenderer, false); projectPackageColumn.PackStart(textRenderer, true); projectPackageColumn.AddAttribute(textRenderer, "text", ProjectPackageNameID); projectPackageTreeView.Model = projectPackageListStore; projectPackageTreeView.HeadersVisible = true; projectPackageTreeView.AppendColumn("", projectPackageToggleRenderer, "active", ProjectPackageToggleID); projectPackageTreeView.AppendColumn(projectPackageColumn); projectPackageTreeView.AppendColumn("Version", textRenderer, "text", ProjectPackageVersionID); // <!-- Selected packages --> Gtk.TreeViewColumn selectedPackageColumn = new Gtk.TreeViewColumn(); selectedPackageColumn.Title = "Package"; selectedPackageColumn.PackStart(pixbufRenderer, false); selectedPackageColumn.PackStart(textRenderer, true); selectedPackageColumn.AddAttribute(textRenderer, "text", SelectedPackageNameID); selectedPackageTreeView.Model = selectedPackageListStore; selectedPackageTreeView.HeadersVisible = true; selectedPackageTreeView.AppendColumn(selectedPackageColumn); selectedPackageTreeView.AppendColumn("Version", textRenderer, "text", SelectedPackageVersionID); // Fill up the project tree view packagesOfProjects = GetPackagesOfProjects(project); foreach (Package p in packagesOfProjects) { if (p.Name == project.Name) { continue; } packages.Add(p); string version = p.Version; bool inProject = selectedPackages.Contains(p); if (!IsPackageInStore(projectPackageListStore, p.Name, version, ProjectPackageNameID, ProjectPackageVersionID)) { projectPackageListStore.AppendValues(inProject, p.Name, version); if (inProject) { selectedPackageListStore.AppendValues(p.Name, version); } } } // Fill up the normal tree view foreach (string dir in ScanDirs()) { if (Directory.Exists(dir)) { DirectoryInfo di = new DirectoryInfo(dir); FileInfo[] availablePackages = di.GetFiles("*.pc"); foreach (FileInfo f in availablePackages) { if (!IsValidPackage(f.FullName)) { continue; } Package package = new Package(f.FullName); packages.Add(package); string name = package.Name; string version = package.Version; bool inProject = selectedPackages.Contains(package); if (!IsPackageInStore(normalPackageListStore, name, version, NormalPackageNameID, NormalPackageVersionID)) { normalPackageListStore.AppendValues(inProject, name, version); if (inProject) { selectedPackageListStore.AppendValues(name, version); } } } } } }
public KeyBindingsPanel() { this.Build(); keyStore = new TreeStore(typeof(Command), typeof(string), typeof(string), typeof(string), typeof(int), typeof(string), typeof(bool), typeof(bool)); keyTreeView.Model = filterModel = new TreeModelFilter(keyStore, null); filterModel.VisibleColumn = visibleCol; TreeViewColumn col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Command"); col.Spacing = 4; CellRendererImage crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "stock-id", iconCol); col.AddAttribute(crp, "visible", iconVisibleCol); CellRendererText crt = new CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", labelCol); col.AddAttribute(crt, "weight", boldCol); keyTreeView.AppendColumn(col); TreeViewColumn bindingTVCol = new TreeViewColumn(); bindingTVCol.Title = GettextCatalog.GetString("Key Binding"); CellRendererText bindingRenderer = new CellRendererText(); bindingTVCol.PackStart(bindingRenderer, false); bindingTVCol.SetCellDataFunc(bindingRenderer, BindingTVDataFunc); keyTreeView.AppendColumn(bindingTVCol); keyTreeView.AppendColumn(GettextCatalog.GetString("Description"), new CellRendererText(), "text", descCol); keyTreeView.Selection.Changed += OnKeysTreeViewSelectionChange; accelEntry.KeyPressEvent += OnAccelEntryKeyPress; accelEntry.KeyReleaseEvent += OnAccelEntryKeyRelease; accelEntry.Changed += delegate { UpdateWarningLabel(); }; updateButton.Clicked += OnUpdateButtonClick; currentBindings = KeyBindingService.CurrentKeyBindingSet.Clone(); schemes = new List <KeyBindingScheme> (KeyBindingService.Schemes); schemeCombo.AppendText(GettextCatalog.GetString("Custom")); foreach (KeyBindingScheme s in schemes) { schemeCombo.AppendText(s.Name); } SelectCurrentScheme(); schemeCombo.Changed += OnKeyBindingSchemeChanged; searchEntry.Ready = true; searchEntry.Visible = true; searchEntry.Changed += delegate { processedFilterTerms = searchEntry.Entry.Text.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries) .Select(s => s.ToLower()).ToArray();; filterChanged = true; if (!filterTimeoutRunning) { filterTimeoutRunning = true; GLib.Timeout.Add(50, delegate { if (!filterChanged) { if (filterTimeoutRunning) { Refilter(); } filterTimeoutRunning = false; return(false); } filterChanged = false; return(true); }); } ; }; //HACK: workaround for MD Bug 608021: Stetic loses values assigned to "new" properties of custom widget conflicButton.Label = GettextCatalog.GetString("_View Conflicts"); conflicButton.UseUnderline = true; }
public CommitDialog(ChangeSet changeSet) { Build(); store = new ListStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(string), typeof(bool), typeof(object)); fileList.Model = store; fileList.SearchColumn = -1; // disable the interactive search this.changeSet = changeSet; oldMessage = changeSet.GlobalComment; CellRendererText crt = new CellRendererText(); var crp = new CellRendererImage(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.Spacing = 2; colStatus.AddAttribute(crp, "image", 0); colStatus.AddAttribute(crt, "text", 1); CellRendererToggle cellToggle = new CellRendererToggle(); cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); TreeViewColumn colCommit = new TreeViewColumn("", cellToggle, "active", 3); TreeViewColumn colFile = new TreeViewColumn(GettextCatalog.GetString("File"), new CellRendererText(), "text", 2); fileList.AppendColumn(colCommit); fileList.AppendColumn(colStatus); fileList.AppendColumn(colFile); colCommit.Visible = false; object[] exts = AddinManager.GetExtensionObjects("/MonoDevelop/VersionControl/CommitDialogExtensions", false); bool separatorRequired = false; foreach (object ob in exts) { CommitDialogExtension ext = ob as CommitDialogExtension; if (ext == null) { LoggingService.LogError("Commit extension type " + ob.GetType() + " must be a subclass of CommitDialogExtension"); continue; } if (ext.Initialize(changeSet)) { var newTitle = ext.FormatDialogTitle(changeSet, Title); if (newTitle != null) { Title = newTitle; } ext.CommitMessageTextViewHook(textview); if (separatorRequired) { HSeparator sep = new HSeparator(); sep.Show(); vboxExtensions.PackEnd(sep, false, false, 0); } vboxExtensions.PackEnd(ext, false, false, 0); extensions.Add(ext); ext.AllowCommitChanged += HandleAllowCommitChanged; separatorRequired = true; } else { ext.Destroy(); } } HandleAllowCommitChanged(null, null); LoadChangeset(changeSet.Items); if (string.IsNullOrEmpty(changeSet.GlobalComment)) { AuthorInformation aInfo; CommitMessageFormat fmt = VersionControlService.GetCommitMessageFormat(changeSet, out aInfo); Message = changeSet.GenerateGlobalComment(fmt, aInfo); } else { Message = changeSet.GlobalComment; } textview.Buffer.Changed += OnTextChanged; responseSensitive = !string.IsNullOrEmpty(Message); // Focus the text view and move the insert point to the beginning. Makes it easier to insert // a comment header. textview.Buffer.MoveMark(textview.Buffer.InsertMark, textview.Buffer.StartIter); textview.Buffer.MoveMark(textview.Buffer.SelectionBound, textview.Buffer.StartIter); textview.GrabFocus(); textview.Buffer.MarkSet += OnMarkSet; SetResponseSensitive(ResponseType.Ok, responseSensitive); VersionControlService.FileStatusChanged += OnFileStatusChanged; }
public ConfirmProjectDeleteDialog(IWorkspaceFileObject item) { this.Build(); this.item = item; store = new TreeStore(typeof(bool), typeof(Xwt.Drawing.Image), typeof(string), typeof(string), typeof(string)); fileList.Model = store; TreeViewColumn col = new TreeViewColumn(); CellRendererToggle crt = new CellRendererToggle(); crt.Toggled += CrtToggled; col.PackStart(crt, false); col.AddAttribute(crt, "active", 0); CellRendererImage crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "image", 1); CellRendererText cre = new CellRendererText(); col.PackStart(cre, true); col.AddAttribute(cre, "text", 2); col.AddAttribute(cre, "foreground", 4); fileList.AppendColumn(col); store.SetSortColumnId(2, SortType.Ascending); labelProjectDir.Text = item.BaseDirectory.FullPath; HashSet <string> itemFiles = new HashSet <string> (); HashSet <string> knownPaths = new HashSet <string> (); foreach (FilePath file in item.GetItemFiles(true)) { itemFiles.Add(file.FullPath); knownPaths.Add(file.FullPath + "~"); } foreach (string ext in knownExtensions) { knownPaths.Add(item.FileName.ChangeExtension(ext)); } FillDirRec(TreeIter.Zero, item, itemFiles, knownPaths, item.BaseDirectory, false); if (item.BaseDirectory != item.ItemDirectory) { // If the project has a custom base directory, make sure the project files // from the item directory are shown in the list foreach (FilePath f in item.GetItemFiles(false)) { if (!f.IsChildPathOf(item.BaseDirectory)) { var pix = DesktopService.GetIconForFile(f, IconSize.Menu); paths [f] = store.AppendValues(true, pix, f.FileName, f.ToString()); } } } if (item is SolutionFolderItem) { var sol = ((SolutionFolderItem)item).ParentSolution; var bdir = item.BaseDirectory; if (sol.GetItemFiles(false).Any(f => f.IsChildPathOf(bdir)) || sol.GetAllItems <SolutionItem> ().Any(it => it != item && it.GetItemFiles(true).Any(f => f.IsChildPathOf(bdir)))) { radioDeleteAll.Sensitive = false; labelProjectDir.Text = GettextCatalog.GetString("Project directory can't be deleted since it contains files from other projects or solutions"); } } if (item.BaseDirectory.FileName == item.Name && radioDeleteAll.Sensitive) { radioDeleteAll.Active = true; fileList.Sensitive = false; } else { radioDeleteSel.Active = true; Focus = radioDeleteSel; } }
public SearchResultWidget() { var vbox = new VBox(); var toolbar = new Toolbar() { Orientation = Orientation.Vertical, IconSize = IconSize.Menu, ToolbarStyle = ToolbarStyle.Icons, }; this.PackStart(vbox, true, true, 0); this.PackStart(toolbar, false, false, 0); labelStatus = new Label() { Xalign = 0, Justify = Justification.Left, }; var hpaned = new HPaned(); vbox.PackStart(hpaned, true, true, 0); vbox.PackStart(labelStatus, false, false, 0); var resultsScroll = new CompactScrolledWindow(); hpaned.Pack1(resultsScroll, true, true); scrolledwindowLogView = new CompactScrolledWindow(); hpaned.Pack2(scrolledwindowLogView, true, true); textviewLog = new TextView() { Editable = false, }; scrolledwindowLogView.Add(textviewLog); store = new ListStore(typeof(SearchResult), typeof(bool) // didRead ); treeviewSearchResults = new PadTreeView() { Model = store, HeadersClickable = true, RulesHint = true, }; treeviewSearchResults.Selection.Mode = Gtk.SelectionMode.Multiple; resultsScroll.Add(treeviewSearchResults); var projectColumn = new TreeViewColumn { Resizable = true, SortColumnId = 1, Title = GettextCatalog.GetString("Project"), Sizing = TreeViewColumnSizing.Fixed, FixedWidth = 100 }; var projectPixbufRenderer = new CellRendererImage(); projectColumn.PackStart(projectPixbufRenderer, false); projectColumn.SetCellDataFunc(projectPixbufRenderer, ResultProjectIconDataFunc); var renderer = treeviewSearchResults.TextRenderer; renderer.Ellipsize = Pango.EllipsizeMode.End; projectColumn.PackStart(renderer, true); projectColumn.SetCellDataFunc(renderer, ResultProjectDataFunc); treeviewSearchResults.AppendColumn(projectColumn); var fileNameColumn = new TreeViewColumn { Resizable = true, SortColumnId = 2, Title = GettextCatalog.GetString("File"), Sizing = TreeViewColumnSizing.Fixed, FixedWidth = 200 }; var fileNamePixbufRenderer = new CellRendererImage(); fileNameColumn.PackStart(fileNamePixbufRenderer, false); fileNameColumn.SetCellDataFunc(fileNamePixbufRenderer, FileIconDataFunc); fileNameColumn.PackStart(renderer, true); fileNameColumn.SetCellDataFunc(renderer, FileNameDataFunc); treeviewSearchResults.AppendColumn(fileNameColumn); TreeViewColumn textColumn = treeviewSearchResults.AppendColumn(GettextCatalog.GetString("Text"), renderer, ResultTextDataFunc); textColumn.Resizable = true; textColumn.Sizing = TreeViewColumnSizing.Fixed; textColumn.FixedWidth = 300; pathColumn = treeviewSearchResults.AppendColumn(GettextCatalog.GetString("Path"), renderer, ResultPathDataFunc); pathColumn.SortColumnId = 3; pathColumn.Resizable = true; pathColumn.Sizing = TreeViewColumnSizing.Fixed; pathColumn.FixedWidth = 500; store.DefaultSortFunc = DefaultSortFunc; store.SetSortFunc(1, CompareProjectFileNames); store.SetSortFunc(2, CompareFileNames); store.SetSortFunc(3, CompareFilePaths); treeviewSearchResults.RowActivated += TreeviewSearchResultsRowActivated; buttonStop = new ToolButton(new ImageView(Gui.Stock.Stop, Gtk.IconSize.Menu), null) { Sensitive = false }; buttonStop.Clicked += ButtonStopClicked; buttonStop.TooltipText = GettextCatalog.GetString("Stop"); toolbar.Insert(buttonStop, -1); var buttonClear = new ToolButton(new ImageView(Gui.Stock.Clear, Gtk.IconSize.Menu), null); buttonClear.Clicked += ButtonClearClicked; buttonClear.TooltipText = GettextCatalog.GetString("Clear results"); toolbar.Insert(buttonClear, -1); var buttonOutput = new ToggleToolButton(); buttonOutput.IconWidget = new ImageView(Gui.Stock.OutputIcon, Gtk.IconSize.Menu); buttonOutput.Clicked += ButtonOutputClicked; buttonOutput.TooltipText = GettextCatalog.GetString("Show output"); toolbar.Insert(buttonOutput, -1); buttonPin = new ToggleToolButton(); buttonPin.IconWidget = new ImageView(Gui.Stock.PinUp, Gtk.IconSize.Menu); buttonPin.Clicked += ButtonPinClicked; buttonPin.TooltipText = GettextCatalog.GetString("Pin results pad"); toolbar.Insert(buttonPin, -1); // store.SetSortColumnId (3, SortType.Ascending); ShowAll(); scrolledwindowLogView.Hide(); treeviewSearchResults.FixedHeightMode = true; UpdateStyles(); IdeApp.Preferences.ColorScheme.Changed += UpdateStyles; }
public StackTracePad() { this.ShadowType = ShadowType.None; var evalCmd = new ActionCommand("StackTracePad.EvaluateMethodParams", GettextCatalog.GetString("Evaluate Method Parameters")); var gotoCmd = new ActionCommand("StackTracePad.ActivateFrame", GettextCatalog.GetString("Activate Stack Frame")); menuSet = new CommandEntrySet(); menuSet.Add(evalCmd); menuSet.Add(gotoCmd); menuSet.AddSeparator(); menuSet.AddItem(EditCommands.SelectAll); menuSet.AddItem(EditCommands.Copy); store = new ListStore(typeof(bool), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(Pango.Style), typeof(object), typeof(int), typeof(bool)); tree = new PadTreeView(store); tree.RulesHint = true; tree.HeadersVisible = true; tree.Selection.Mode = SelectionMode.Multiple; tree.SearchEqualFunc = Search; tree.EnableSearch = true; tree.SearchColumn = 1; tree.ButtonPressEvent += HandleButtonPressEvent; tree.DoPopupMenu = ShowPopup; var col = new TreeViewColumn(); var crp = new CellRendererImage(); col.PackStart(crp, false); crp.Image = pointerImage; col.AddAttribute(crp, "visible", IconColumn); tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Name"); refresh = new CellRendererImage(); refresh.Image = ImageService.GetIcon(Gtk.Stock.Refresh).WithSize(12, 12); col.PackStart(refresh, false); col.AddAttribute(refresh, "visible", CanRefreshColumn); col.PackStart(tree.TextRenderer, true); col.AddAttribute(tree.TextRenderer, "text", MethodColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); col.AddAttribute(tree.TextRenderer, "style", StyleColumn); col.Resizable = true; col.Alignment = 0.0f; tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("File"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", FileColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Language"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", LangColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); tree.AppendColumn(col); col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Address"); col.PackStart(tree.TextRenderer, false); col.AddAttribute(tree.TextRenderer, "text", AddrColumn); col.AddAttribute(tree.TextRenderer, "foreground", ForegroundColumn); tree.AppendColumn(col); Add(tree); ShowAll(); UpdateDisplay(); DebuggingService.CallStackChanged += OnClassStackChanged; DebuggingService.CurrentFrameChanged += OnFrameChanged; DebuggingService.StoppedEvent += OnDebuggingServiceStopped; tree.RowActivated += OnRowActivated; }
public SelectReferenceDialog() { Build(); combinedBox = new CombinedBox(); combinedBox.Show(); mainBook = new Notebook(); combinedBox.Add(mainBook); alignment1.Add(combinedBox); mainBook.ShowAll(); filterEntry = combinedBox.FilterEntry; boxRefs.WidthRequest = 200; refTreeStore = new ListStore(typeof(string), typeof(string), typeof(string), typeof(ProjectReference), typeof(Xwt.Drawing.Image)); ReferencesTreeView.Model = refTreeStore; TreeViewColumn col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Reference"); CellRendererImage crp = new CellRendererImage(); crp.Yalign = 0f; col.PackStart(crp, false); col.AddAttribute(crp, "image", IconColumn); CellRendererText text_render = new CellRendererText(); col.PackStart(text_render, true); col.AddAttribute(text_render, "markup", NameColumn); text_render.Ellipsize = Pango.EllipsizeMode.End; ReferencesTreeView.AppendColumn(col); // ReferencesTreeView.AppendColumn (GettextCatalog.GetString ("Type"), new CellRendererText (), "text", TypeNameColumn); // ReferencesTreeView.AppendColumn (GettextCatalog.GetString ("Location"), new CellRendererText (), "text", LocationColumn); projectRefPanel = new ProjectReferencePanel(this); packageRefPanel = new PackageReferencePanel(this, false); allRefPanel = new PackageReferencePanel(this, true); assemblyRefPanel = new AssemblyReferencePanel(this); panels.Add(allRefPanel); panels.Add(packageRefPanel); panels.Add(projectRefPanel); panels.Add(assemblyRefPanel); //mainBook.RemovePage (mainBook.CurrentPage); HBox tab = new HBox(false, 3); // tab.PackStart (new Image (ImageService.GetPixbuf (MonoDevelop.Ide.Gui.Stock.Reference, IconSize.Menu)), false, false, 0); tab.PackStart(new Label(GettextCatalog.GetString("_All")), true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); mainBook.AppendPage(allRefPanel, tab); tab = new HBox(false, 3); // tab.PackStart (new Image (ImageService.GetPixbuf (MonoDevelop.Ide.Gui.Stock.Package, IconSize.Menu)), false, false, 0); tab.PackStart(new Label(GettextCatalog.GetString("_Packages")), true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); mainBook.AppendPage(packageRefPanel, tab); tab = new HBox(false, 3); // tab.PackStart (new Image (ImageService.GetPixbuf (MonoDevelop.Ide.Gui.Stock.Project, IconSize.Menu)), false, false, 0); tab.PackStart(new Label(GettextCatalog.GetString("Pro_jects")), true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); mainBook.AppendPage(projectRefPanel, tab); tab = new HBox(false, 3); // tab.PackStart (new Image (ImageService.GetPixbuf (MonoDevelop.Ide.Gui.Stock.OpenFolder, IconSize.Menu)), false, false, 0); tab.PackStart(new Label(GettextCatalog.GetString(".Net A_ssembly")), true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); mainBook.AppendPage(assemblyRefPanel, tab); mainBook.Page = 0; var w = selectedHeader.Child; selectedHeader.Remove(w); HeaderBox header = new HeaderBox(1, 0, 1, 1); header.SetPadding(6, 6, 6, 6); header.GradientBackground = true; header.Add(w); selectedHeader.Add(header); RemoveReferenceButton.CanFocus = false; ReferencesTreeView.Selection.Changed += new EventHandler(OnChanged); Child.ShowAll(); OnChanged(null, null); InsertFilterEntry(); }
public ChangeSetView() { ShadowType = Gtk.ShadowType.In; filelist = new FileTreeView(); filelist.Selection.Mode = SelectionMode.Multiple; Add(filelist); HscrollbarPolicy = PolicyType.Automatic; VscrollbarPolicy = PolicyType.Automatic; filelist.RowActivated += OnRowActivated; filelist.DiffLineActivated += OnDiffLineActivated; CellRendererToggle cellToggle = new CellRendererToggle(); // cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); var crc = new CellRendererImage(); crc.StockId = "vc-comment"; colCommit = new TreeViewColumn(); colCommit.Spacing = 2; colCommit.Widget = new Xwt.ImageView(commitImage).ToGtkWidget(); colCommit.Widget.Show(); colCommit.PackStart(cellToggle, false); colCommit.PackStart(crc, false); colCommit.AddAttribute(cellToggle, "active", ColCommit); colCommit.AddAttribute(cellToggle, "visible", ColShowToggle); colCommit.AddAttribute(crc, "visible", ColShowComment); colCommit.Visible = false; CellRendererText crt = new CellRendererText(); var crp = new CellRendererImage(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.AddAttribute(crp, "image", ColIcon); colStatus.AddAttribute(crp, "visible", ColShowStatus); colStatus.AddAttribute(crt, "text", ColStatus); colStatus.AddAttribute(crt, "foreground", ColStatusColor); TreeViewColumn colFile = new TreeViewColumn(); colFile.Title = GettextCatalog.GetString("File"); colFile.Spacing = 2; crp = new CellRendererImage(); diffRenderer = new CellRendererDiff(); colFile.PackStart(crp, false); colFile.PackStart(diffRenderer, true); colFile.AddAttribute(crp, "image", ColIconFile); colFile.AddAttribute(crp, "visible", ColShowStatus); colFile.SetCellDataFunc(diffRenderer, new TreeCellDataFunc(SetDiffCellData)); filelist.AppendColumn(colStatus); filelist.AppendColumn(colCommit); filelist.AppendColumn(colFile); filestore = new TreeStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(string[]), typeof(bool), typeof(bool), typeof(string), typeof(bool), typeof(bool), typeof(Xwt.Drawing.Image), typeof(bool), typeof(string)); filelist.Model = filestore; filelist.SearchColumn = -1; // disable the interactive search filelist.TestExpandRow += new Gtk.TestExpandRowHandler(OnTestExpandRow); ShowAll(); filelist.Selection.Changed += new EventHandler(OnCursorChanged); filelist.HeadersClickable = true; filestore.SetSortFunc(0, CompareNodes); colStatus.SortColumnId = 0; filestore.SetSortFunc(1, CompareNodes); colCommit.SortColumnId = 1; filestore.SetSortFunc(2, CompareNodes); colFile.SortColumnId = 2; filestore.SetSortColumnId(2, Gtk.SortType.Ascending); }
public void Initialize(IPadWindow window) { // Toolbar and menu definitions ActionCommand gotoCmd = new ActionCommand(LocalCommands.GoToFile, GettextCatalog.GetString("Go to File")); ActionCommand propertiesCmd = new ActionCommand(LocalCommands.Properties, GettextCatalog.GetString("Properties"), Gtk.Stock.Properties); menuSet = new CommandEntrySet(); menuSet.Add(gotoCmd); menuSet.AddSeparator(); menuSet.AddItem(DebugCommands.EnableDisableBreakpoint); menuSet.AddItem(DebugCommands.ClearAllBreakpoints); menuSet.AddItem(DebugCommands.DisableAllBreakpoints); menuSet.AddItem(EditCommands.DeleteKey); menuSet.AddSeparator(); menuSet.Add(propertiesCmd); CommandEntrySet toolbarSet = new CommandEntrySet(); toolbarSet.AddItem(DebugCommands.EnableDisableBreakpoint); toolbarSet.AddItem(DebugCommands.ClearAllBreakpoints); toolbarSet.AddItem(DebugCommands.DisableAllBreakpoints); toolbarSet.AddItem(EditCommands.Delete); toolbarSet.AddSeparator(); toolbarSet.Add(propertiesCmd); toolbarSet.AddSeparator(); toolbarSet.Add(new CommandEntry(DebugCommands.NewFunctionBreakpoint) { DispayType = CommandEntryDisplayType.IconAndText }); toolbarSet.Add(new CommandEntry(DebugCommands.NewCatchpoint) { DispayType = CommandEntryDisplayType.IconAndText }); // The breakpoint list store = new TreeStore(typeof(string), typeof(bool), typeof(string), typeof(object), typeof(string), typeof(string), typeof(string), typeof(string)); tree = new PadTreeView(); tree.Model = store; tree.RulesHint = true; tree.HeadersVisible = true; tree.DoPopupMenu = ShowPopup; tree.KeyPressEvent += OnKeyPressEvent; tree.Selection.Mode = SelectionMode.Multiple; treeState = new TreeViewState(tree, (int)Columns.Breakpoint); TreeViewColumn col = new TreeViewColumn(); CellRenderer crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "stock_id", (int)Columns.Icon); tree.AppendColumn(col); Gtk.CellRendererToggle toggleRender = new Gtk.CellRendererToggle(); toggleRender.Toggled += new ToggledHandler(ItemToggled); col = new TreeViewColumn(); col.PackStart(toggleRender, false); col.AddAttribute(toggleRender, "active", (int)Columns.Selected); tree.AppendColumn(col); TreeViewColumn FrameCol = new TreeViewColumn(); CellRenderer crt = tree.TextRenderer; FrameCol.Title = GettextCatalog.GetString("Name"); FrameCol.PackStart(crt, true); FrameCol.AddAttribute(crt, "text", (int)Columns.FileName); FrameCol.Resizable = true; FrameCol.Alignment = 0.0f; tree.AppendColumn(FrameCol); col = tree.AppendColumn(GettextCatalog.GetString("Condition"), crt, "text", (int)Columns.Condition); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Trace Expression"), crt, "text", (int)Columns.TraceExp); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Hit Count"), crt, "text", (int)Columns.HitCount); col.Resizable = true; col = tree.AppendColumn(GettextCatalog.GetString("Last Trace"), crt, "text", (int)Columns.LastTrace); col.Resizable = true; sw = new Gtk.ScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(tree); control = sw; control.ShowAll(); breakpoints = DebuggingService.Breakpoints; UpdateDisplay(); breakpoints.BreakpointAdded += OnBreakpointAdded; breakpoints.BreakpointRemoved += OnBreakpointRemoved; breakpoints.Changed += OnBreakpointChanged; breakpoints.BreakpointUpdated += OnBreakpointUpdated; DebuggingService.PausedEvent += OnDebuggerStatusCheck; DebuggingService.ResumedEvent += OnDebuggerStatusCheck; DebuggingService.StoppedEvent += OnDebuggerStatusCheck; tree.RowActivated += OnRowActivated; DockItemToolbar toolbar = window.GetToolbar(PositionType.Top); toolbar.Add(toolbarSet, sw); toolbar.ShowAll(); }
public RegexToolkitWidget() { this.Build(); optionsStore = new ListStore(typeof(bool), typeof(string), typeof(Options)); resultStore = new Gtk.TreeStore(typeof(string), typeof(string), typeof(int), typeof(int)); FillOptionsBox(); this.buttonStart.Sensitive = false; this.entryRegEx.Changed += UpdateStartButtonSensitivity; this.inputTextview.Buffer.Changed += UpdateStartButtonSensitivity; this.buttonStart.Clicked += delegate { if (regexThread != null && regexThread.IsAlive) { regexThread.Abort(); regexThread.Join(); SetButtonStart(GettextCatalog.GetString("Start Regular E_xpression"), "gtk-media-play"); regexThread = null; return; } regexThread = new Thread(delegate() { PerformQuery(inputTextview.Buffer.Text, this.entryRegEx.Text, this.entryReplace.Text, GetOptions()); }); regexThread.IsBackground = true; regexThread.Name = "regex thread"; regexThread.Start(); SetButtonStart(GettextCatalog.GetString("Stop e_xecution"), "gtk-media-stop"); SetFindMode(!checkbuttonReplace.Active); }; SetFindMode(true); var cellRendText = new CellRendererText(); cellRendText.Ellipsize = Pango.EllipsizeMode.End; this.optionsTreeview.Model = this.optionsStore; this.optionsTreeview.HeadersVisible = false; CellRendererToggle cellRendToggle = new CellRendererToggle(); cellRendToggle.Toggled += new ToggledHandler(OptionToggled); cellRendToggle.Activatable = true; this.optionsTreeview.AppendColumn("", cellRendToggle, "active", 0); this.optionsTreeview.AppendColumn("", cellRendText, "text", 1); this.resultsTreeview.Model = this.resultStore; this.resultsTreeview.HeadersVisible = false; var col = new TreeViewColumn(); this.resultsTreeview.AppendColumn(col); var pix = new CellRendererImage(); col.PackStart(pix, false); col.AddAttribute(pix, "stock_id", 0); col.PackStart(cellRendText, true); col.AddAttribute(cellRendText, "text", 1); this.resultsTreeview.RowActivated += delegate(object sender, RowActivatedArgs e) { Gtk.TreeIter iter; if (resultStore.GetIter(out iter, e.Path)) { int index = (int)resultStore.GetValue(iter, 2); int length = (int)resultStore.GetValue(iter, 3); if (index >= 0) { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(index), this.inputTextview.Buffer.GetIterAtOffset(index + length)); } else { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(0), this.inputTextview.Buffer.GetIterAtOffset(0)); } } }; this.entryReplace.Sensitive = this.checkbuttonReplace.Active = false; this.checkbuttonReplace.Toggled += delegate { this.entryReplace.Sensitive = this.checkbuttonReplace.Active; }; this.vbox4.WidthRequest = 380; this.scrolledwindow5.HeightRequest = 150; this.scrolledwindow1.HeightRequest = 150; Show(); }
public OptionsDialog(MonoDevelop.Components.Window parentWindow, object dataObject, string extensionPath, bool removeEmptySections) { buttonCancel = new Gtk.Button(Gtk.Stock.Cancel); AddActionWidget(this.buttonCancel, ResponseType.Cancel); buttonOk = new Gtk.Button(Gtk.Stock.Ok); this.ActionArea.PackStart(buttonOk); buttonOk.Clicked += OnButtonOkClicked; mainHBox = new HBox(); tree = new TreeView(); var sw = new ScrolledWindow(); sw.Add(tree); sw.HscrollbarPolicy = PolicyType.Never; sw.VscrollbarPolicy = PolicyType.Automatic; sw.ShadowType = ShadowType.None; var fboxTree = new HeaderBox(); fboxTree.SetMargins(0, 1, 0, 1); fboxTree.SetPadding(0, 0, 0, 0); fboxTree.BackgroundColor = new Gdk.Color(255, 255, 255); fboxTree.Add(sw); mainHBox.PackStart(fboxTree, false, false, 0); Realized += delegate { fboxTree.BackgroundColor = tree.Style.Base(Gtk.StateType.Normal); }; var vbox = new VBox(); mainHBox.PackStart(vbox, true, true, 0); var headerBox = new HBox(false, 6); labelTitle = new Label(); labelTitle.Xalign = 0; textHeader = new Alignment(0, 0, 1, 1); textHeader.Add(labelTitle); textHeader.BorderWidth = 12; headerBox.PackStart(textHeader, true, true, 0); imageHeader = new OptionsDialogHeader(); imageHeader.Hide(); headerBox.PackStart(imageHeader.ToGtkWidget()); var fboxHeader = new HeaderBox(); fboxHeader.SetMargins(0, 1, 0, 0); fboxHeader.Add(headerBox); // fbox.GradientBackround = true; // fbox.BackgroundColor = new Gdk.Color (255, 255, 255); Realized += delegate { var c = Style.Background(Gtk.StateType.Normal).ToXwtColor(); c.Light += 0.09; fboxHeader.BackgroundColor = c.ToGdkColor(); }; StyleSet += delegate { if (IsRealized) { var c = Style.Background(Gtk.StateType.Normal).ToXwtColor(); c.Light += 0.09; fboxHeader.BackgroundColor = c.ToGdkColor(); } }; vbox.PackStart(fboxHeader, false, false, 0); pageFrame = new HBox(); var fbox = new HeaderBox(); fbox.SetMargins(0, 1, 0, 0); fbox.ShowTopShadow = true; fbox.Add(pageFrame); vbox.PackStart(fbox, true, true, 0); this.VBox.PackStart(mainHBox, true, true, 0); this.removeEmptySections = removeEmptySections; extensionContext = AddinManager.CreateExtensionContext(); this.mainDataObject = dataObject; this.extensionPath = extensionPath; if (parentWindow != null) { TransientFor = parentWindow; } ImageService.EnsureStockIconIsLoaded(emptyCategoryIcon); store = new TreeStore(typeof(OptionsDialogSection)); tree.Model = store; tree.HeadersVisible = false; // Column 0 is used to add some padding at the left of the expander TreeViewColumn col0 = new TreeViewColumn(); col0.MinWidth = 6; tree.AppendColumn(col0); TreeViewColumn col = new TreeViewColumn(); var crp = new CellRendererImage(); col.PackStart(crp, false); col.SetCellDataFunc(crp, PixbufCellDataFunc); var crt = new CellRendererText(); col.PackStart(crt, true); col.SetCellDataFunc(crt, TextCellDataFunc); tree.AppendColumn(col); tree.ExpanderColumn = col; tree.Selection.Changed += OnSelectionChanged; Child.ShowAll(); InitializeContext(extensionContext); FillTree(); ExpandCategories(); RestoreLastPanel(); this.DefaultResponse = Gtk.ResponseType.Ok; buttonOk.CanDefault = true; buttonOk.GrabDefault(); DefaultWidth = 960; DefaultHeight = 680; }
void Init() { main = new VBox(false, 6); widget = main; buttonCommit = new Gtk.Button() { Image = new Xwt.ImageView(Xwt.Drawing.Image.FromResource("commit-light-16.png")).ToGtkWidget(), Label = GettextCatalog.GetString("Commit...") }; buttonCommit.Image.Show(); buttonRevert = new Gtk.Button() { Image = new Xwt.ImageView(Xwt.Drawing.Image.FromResource("revert-light-16.png")).ToGtkWidget(), Label = GettextCatalog.GetString("Revert") }; buttonRevert.Image.Show(); showRemoteStatus = new Gtk.Button() { Image = new Xwt.ImageView(Xwt.Drawing.Image.FromResource("remote-status-light-16.png")).ToGtkWidget(), Label = GettextCatalog.GetString("Show Remote Status") }; showRemoteStatus.Image.Show(); status = new Label(""); main.PackStart(status, false, false, 0); scroller = new ScrolledWindow(); scroller.ShadowType = Gtk.ShadowType.None; filelist = new FileTreeView(); filelist.Selection.Mode = Gtk.SelectionMode.Multiple; scroller.Add(filelist); scroller.HscrollbarPolicy = PolicyType.Automatic; scroller.VscrollbarPolicy = PolicyType.Automatic; filelist.RowActivated += OnRowActivated; filelist.DiffLineActivated += OnDiffLineActivated; cellToggle = new CellRendererToggle(); cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); var crc = new CellRendererImage(); crc.StockId = "vc-comment"; colCommit = new TreeViewColumn(); colCommit.Spacing = 2; colCommit.Widget = new Xwt.ImageView(Xwt.Drawing.Image.FromResource("commit-light-16.png")).ToGtkWidget(); colCommit.Widget.Show(); colCommit.PackStart(cellToggle, false); colCommit.PackStart(crc, false); colCommit.AddAttribute(cellToggle, "active", ColCommit); colCommit.AddAttribute(cellToggle, "visible", ColShowToggle); colCommit.AddAttribute(crc, "visible", ColShowComment); CellRendererText crt = new CellRendererText(); var crp = new CellRendererImage(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.AddAttribute(crp, "image", ColIcon); colStatus.AddAttribute(crp, "visible", ColShowStatus); colStatus.AddAttribute(crt, "text", ColStatus); colStatus.AddAttribute(crt, "foreground", ColStatusColor); colFile = new TreeViewColumn(); colFile.Title = GettextCatalog.GetString("File"); colFile.Spacing = 2; crp = new CellRendererImage(); diffRenderer = new CellRendererDiff(); colFile.PackStart(crp, false); colFile.PackStart(diffRenderer, true); colFile.AddAttribute(crp, "image", ColIconFile); colFile.AddAttribute(crp, "visible", ColShowStatus); colFile.SetCellDataFunc(diffRenderer, new TreeCellDataFunc(SetDiffCellData)); crt = new CellRendererText(); crp = new CellRendererImage(); colRemote = new TreeViewColumn(); colRemote.Title = GettextCatalog.GetString("Remote Status"); colRemote.PackStart(crp, false); colRemote.PackStart(crt, true); colRemote.AddAttribute(crp, "image", ColRemoteIcon); colRemote.AddAttribute(crt, "text", ColRemoteStatus); colRemote.AddAttribute(crt, "foreground", ColStatusColor); filelist.AppendColumn(colStatus); filelist.AppendColumn(colRemote); filelist.AppendColumn(colCommit); filelist.AppendColumn(colFile); colRemote.Visible = false; filestore = new TreeStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(string[]), typeof(string), typeof(bool), typeof(bool), typeof(string), typeof(bool), typeof(bool), typeof(Xwt.Drawing.Image), typeof(bool), typeof(Xwt.Drawing.Image), typeof(string), typeof(bool), typeof(bool)); filelist.Model = filestore; filelist.TestExpandRow += new Gtk.TestExpandRowHandler(OnTestExpandRow); commitBox = new VBox(); HeaderBox commitMessageLabelBox = new HeaderBox(); commitMessageLabelBox.SetPadding(6, 6, 6, 6); commitMessageLabelBox.SetMargins(1, 1, 0, 0); HBox labBox = new HBox(); labelCommit = new Gtk.Label(GettextCatalog.GetString("Commit message:")); labelCommit.Xalign = 0; labBox.PackStart(new Xwt.ImageView(Xwt.Drawing.Image.FromResource("comment-light-16.png")).ToGtkWidget(), false, false, 0); labBox.PackStart(labelCommit, true, true, 3); commitMessageLabelBox.Add(labBox); commitMessageLabelBox.ShowAll(); //commitBox.PackStart (commitMessageLabelBox, false, false, 0); Gtk.ScrolledWindow frame = new Gtk.ScrolledWindow(); frame.HeightRequest = 75; frame.ShadowType = ShadowType.None; commitText = new TextView(); commitText.WrapMode = WrapMode.WordChar; commitText.Buffer.Changed += OnCommitTextChanged; frame.Add(commitText); commitBox.PackStart(frame, true, true, 0); var paned = new VPanedThin(); paned.HandleWidget = commitMessageLabelBox; paned.Pack1(scroller, true, true); paned.Pack2(commitBox, false, false); main.PackStart(paned, true, true, 0); main.ShowAll(); status.Visible = false; filelist.Selection.Changed += new EventHandler(OnCursorChanged); VersionControlService.FileStatusChanged += OnFileStatusChanged; filelist.HeadersClickable = true; filestore.SetSortFunc(0, CompareNodes); colStatus.SortColumnId = 0; filestore.SetSortFunc(1, CompareNodes); colRemote.SortColumnId = 1; filestore.SetSortFunc(2, CompareNodes); colCommit.SortColumnId = 2; filestore.SetSortFunc(3, CompareNodes); colFile.SortColumnId = 3; filestore.SetSortColumnId(3, Gtk.SortType.Ascending); filelist.DoPopupMenu = DoPopupMenu; StartUpdate(); }