void _PushSubView(ViewBuilder viewBuilder) { if (viewBuilder == null) throw new System.Exception("Node View Builder is null"); if (_stackViewBuilders.Count == 0) { _logView.Hide(); } viewBuilder.level = _stackViewBuilders.Count; _stackViewBuilders.Add(viewBuilder); _genericView.Show(viewBuilder); }
void CreateControl() { control = new HPaned(); store = new Gtk.TreeStore(typeof(Xwt.Drawing.Image), // image - type typeof(bool), // read? typeof(Task), // read? -- use Pango weight typeof(string)); TreeModelFilterVisibleFunc filterFunct = new TreeModelFilterVisibleFunc(FilterTasks); filter = new TreeModelFilter(store, null); filter.VisibleFunc = filterFunct; sort = new TreeModelSort(filter); sort.SetSortFunc(VisibleColumns.Type, SeverityIterSort); sort.SetSortFunc(VisibleColumns.Project, ProjectIterSort); sort.SetSortFunc(VisibleColumns.File, FileIterSort); view = new PadTreeView(sort); view.ShowExpanders = true; view.RulesHint = true; view.DoPopupMenu = (evnt) => IdeApp.CommandService.ShowContextMenu(view, evnt, CreateMenu()); AddColumns(); LoadColumnsVisibility(); view.Columns[VisibleColumns.Type].SortColumnId = VisibleColumns.Type; view.Columns[VisibleColumns.Project].SortColumnId = VisibleColumns.Project; view.Columns[VisibleColumns.File].SortColumnId = VisibleColumns.File; sw = new MonoDevelop.Components.CompactScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(view); TaskService.Errors.TasksRemoved += DispatchService.GuiDispatch <TaskEventHandler> (ShowResults); TaskService.Errors.TasksAdded += DispatchService.GuiDispatch <TaskEventHandler> (TaskAdded); TaskService.Errors.TasksChanged += DispatchService.GuiDispatch <TaskEventHandler> (TaskChanged); TaskService.Errors.CurrentLocationTaskChanged += HandleTaskServiceErrorsCurrentLocationTaskChanged; IdeApp.Workspace.FirstWorkspaceItemOpened += OnCombineOpen; IdeApp.Workspace.LastWorkspaceItemClosed += OnCombineClosed; view.RowActivated += new RowActivatedHandler(OnRowActivated); iconWarning = ImageService.GetIcon(Ide.Gui.Stock.Warning, Gtk.IconSize.Menu); iconError = ImageService.GetIcon(Ide.Gui.Stock.Error, Gtk.IconSize.Menu); iconInfo = ImageService.GetIcon(Ide.Gui.Stock.Information, Gtk.IconSize.Menu); iconEmpty = ImageService.GetIcon(Ide.Gui.Stock.Empty, Gtk.IconSize.Menu); control.Add1(sw); outputView = new LogView(); control.Add2(outputView); Control.ShowAll(); control.SizeAllocated += HandleControlSizeAllocated; bool outputVisible = PropertyService.Get <bool> (outputViewVisiblePropertyName, false); if (outputVisible) { outputView.Visible = true; logBtn.Active = true; } else { outputView.Hide(); } sw.SizeAllocated += HandleSwSizeAllocated; // Load existing tasks foreach (Task t in TaskService.Errors) { AddTask(t); } control.FocusChain = new Gtk.Widget [] { sw }; }
void CreateControl() { control = new HPaned(); store = new Gtk.ListStore(typeof(Gdk.Pixbuf), // image - type typeof(bool), // read? typeof(Task)); // read? -- use Pango weight TreeModelFilterVisibleFunc filterFunct = new TreeModelFilterVisibleFunc(FilterTaskTypes); filter = new TreeModelFilter(store, null); filter.VisibleFunc = filterFunct; sort = new TreeModelSort(filter); sort.SetSortFunc(VisibleColumns.Type, SeverityIterSort); sort.SetSortFunc(VisibleColumns.Project, ProjectIterSort); sort.SetSortFunc(VisibleColumns.File, FileIterSort); view = new MonoDevelop.Ide.Gui.Components.PadTreeView(sort); view.RulesHint = true; view.PopupMenu += new PopupMenuHandler(OnPopupMenu); view.ButtonPressEvent += new ButtonPressEventHandler(OnButtonPressed); AddColumns(); LoadColumnsVisibility(); view.Columns[VisibleColumns.Type].SortColumnId = VisibleColumns.Type; view.Columns[VisibleColumns.Project].SortColumnId = VisibleColumns.Project; view.Columns[VisibleColumns.File].SortColumnId = VisibleColumns.File; sw = new MonoDevelop.Components.CompactScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(view); TaskService.Errors.TasksRemoved += (TaskEventHandler)DispatchService.GuiDispatch(new TaskEventHandler(ShowResults)); TaskService.Errors.TasksAdded += (TaskEventHandler)DispatchService.GuiDispatch(new TaskEventHandler(TaskAdded)); TaskService.Errors.TasksChanged += (TaskEventHandler)DispatchService.GuiDispatch(new TaskEventHandler(TaskChanged)); TaskService.Errors.CurrentLocationTaskChanged += HandleTaskServiceErrorsCurrentLocationTaskChanged; IdeApp.Workspace.FirstWorkspaceItemOpened += OnCombineOpen; IdeApp.Workspace.LastWorkspaceItemClosed += OnCombineClosed; view.RowActivated += new RowActivatedHandler(OnRowActivated); iconWarning = sw.RenderIcon(Gtk.Stock.DialogWarning, Gtk.IconSize.Menu, ""); iconError = sw.RenderIcon(Gtk.Stock.DialogError, Gtk.IconSize.Menu, ""); iconInfo = sw.RenderIcon(Gtk.Stock.DialogInfo, Gtk.IconSize.Menu, ""); control.Add1(sw); outputView = new LogView(); control.Add2(outputView); Control.ShowAll(); sw.SizeAllocated += delegate { if (outputView.Visible) { PropertyService.Set(logSeparatorPositionPropertyName, (double)((double)control.Position / (double)control.Allocation.Width)); } }; outputView.Hide(); CreateMenu(); // Load existing tasks foreach (Task t in TaskService.Errors) { AddTask(t); } control.FocusChain = new Gtk.Widget [] { sw }; }
void CreateControl() { control = new HPaned(); store = new Gtk.TreeStore(typeof(Xwt.Drawing.Image), // image - type typeof(bool), // read? typeof(TaskListEntry), // read? -- use Pango weight typeof(string)); SemanticModelAttribute modelAttr = new SemanticModelAttribute("store__Type", "store__Read", "store__Task", "store__Description"); TypeDescriptor.AddAttributes(store, modelAttr); TreeModelFilterVisibleFunc filterFunct = new TreeModelFilterVisibleFunc(FilterTasks); filter = new TreeModelFilter(store, null); filter.VisibleFunc = filterFunct; sort = new TreeModelSort(filter); sort.SetSortFunc(VisibleColumns.Type, SeverityIterSort); sort.SetSortFunc(VisibleColumns.Project, ProjectIterSort); sort.SetSortFunc(VisibleColumns.File, FileIterSort); sort.SetSortFunc(VisibleColumns.Category, CategoryIterSort); view = new PadTreeView(sort); view.Selection.Mode = SelectionMode.Multiple; view.ShowExpanders = true; view.RulesHint = true; view.DoPopupMenu += ShowPopup; AddColumns(); LoadColumnsVisibility(); view.Columns [VisibleColumns.Type].SortColumnId = VisibleColumns.Type; view.Columns [VisibleColumns.Project].SortColumnId = VisibleColumns.Project; view.Columns [VisibleColumns.File].SortColumnId = VisibleColumns.File; view.Columns [VisibleColumns.Category].SortColumnId = VisibleColumns.Category; sw = new MonoDevelop.Components.CompactScrolledWindow(); sw.ShadowType = ShadowType.None; sw.Add(view); TaskService.Errors.TasksRemoved += ShowResults; TaskService.Errors.TasksAdded += TaskAdded; TaskService.Errors.TasksChanged += TaskChanged; TaskService.Errors.CurrentLocationTaskChanged += HandleTaskServiceErrorsCurrentLocationTaskChanged; IdeApp.Workspace.FirstWorkspaceItemOpened += OnCombineOpen; IdeApp.Workspace.LastWorkspaceItemClosed += OnCombineClosed; view.RowActivated += new RowActivatedHandler(OnRowActivated); iconWarning = ImageService.GetIcon(Ide.Gui.Stock.Warning, Gtk.IconSize.Menu); iconError = ImageService.GetIcon(Ide.Gui.Stock.Error, Gtk.IconSize.Menu); iconInfo = ImageService.GetIcon(Ide.Gui.Stock.Information, Gtk.IconSize.Menu); iconEmpty = ImageService.GetIcon(Ide.Gui.Stock.Empty, Gtk.IconSize.Menu); control.Add1(sw); outputView = new LogView { Name = "buildOutput" }; control.Add2(outputView); control.ShowAll(); control.SizeAllocated += HandleControlSizeAllocated; bool outputVisible = OutputViewVisible; if (outputVisible) { outputView.Visible = true; logBtn.Active = true; } else { outputView.Hide(); } sw.SizeAllocated += HandleSwSizeAllocated; // Load existing tasks foreach (TaskListEntry t in TaskService.Errors) { AddTask(t); } control.FocusChain = new Gtk.Widget [] { outputView, sw }; }