public FlagsSelectorDialog(Gtk.Window parent, EnumDescriptor enumDesc, uint flags, string title) { this.flags = flags; this.parent = parent; Glade.XML xml = new Glade.XML (null, "stetic.glade", "FlagsSelectorDialog", null); xml.Autoconnect (this); store = new Gtk.ListStore (typeof(bool), typeof(string), typeof(uint)); treeView.Model = store; Gtk.TreeViewColumn col = new Gtk.TreeViewColumn (); Gtk.CellRendererToggle tog = new Gtk.CellRendererToggle (); tog.Toggled += new Gtk.ToggledHandler (OnToggled); col.PackStart (tog, false); col.AddAttribute (tog, "active", 0); Gtk.CellRendererText crt = new Gtk.CellRendererText (); col.PackStart (crt, true); col.AddAttribute (crt, "text", 1); treeView.AppendColumn (col); foreach (Enum value in enumDesc.Values) { EnumValue eval = enumDesc[value]; if (eval.Label == "") continue; uint val = (uint) (int) eval.Value; store.AppendValues (((flags & val) != 0), eval.Label, val); } }
public FlagsSelectorDialog(Gtk.Window parent, EnumDescriptor enumDesc, uint flags, string title) { this.flags = flags; this.parent = parent; Glade.XML xml = new Glade.XML(null, "stetic.glade", "FlagsSelectorDialog", null); xml.Autoconnect(this); store = new Gtk.ListStore(typeof(bool), typeof(string), typeof(uint)); treeView.Model = store; Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); Gtk.CellRendererToggle tog = new Gtk.CellRendererToggle(); tog.Toggled += new Gtk.ToggledHandler(OnToggled); col.PackStart(tog, false); col.AddAttribute(tog, "active", 0); Gtk.CellRendererText crt = new Gtk.CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", 1); treeView.AppendColumn(col); foreach (Enum value in enumDesc.Values) { EnumValue eval = enumDesc[value]; if (eval.Label == "") { continue; } uint val = (uint)Convert.ToInt32(eval.Value); store.AppendValues(((flags & val) != 0), eval.Label, val); } }
public NoteEditor() { this.Build(); var store = new Gtk.ListStore(typeof(string), typeof(string)); store.AppendValues("gtk-edit", "no, you are the fuel"); var column = new Gtk.TreeViewColumn(); var iconRenderer = new Gtk.CellRendererPixbuf(); column.PackStart(iconRenderer, false); column.AddAttribute(iconRenderer, "stock-id", 0); var textRenderer = new Gtk.CellRendererText(); column.PackStart(textRenderer, true); column.AddAttribute(textRenderer, "text", 1); NoteChildrenTreeView.Model = store; NoteChildrenTreeView.AppendColumn(column); // http://www.mono-project.com/GtkSharp_TreeView_Tutorial // http://afaikblog.files.wordpress.com/2012/05/edit-item1.png // http://james.newtonking.com/projects/json/help/ // http://mono.1490590.n4.nabble.com/NodeView-TreeView-Image-and-Text-into-the-same-column-td1546566.html // OKAY, I NEED TO DECIDE HOW I AM GOING TO BIND THINGS // I definitely want a ViewModel. }
void BuildTreeview() { this.TreeView = new Gtk.TreeView(); var store = new Gtk.TreeStore(typeof(bool), typeof(string), typeof(string)); this.TreeView.Model = store; // Create a column var column1 = new Gtk.TreeViewColumn(); // Add a toggle render var toggleRenderer = new Gtk.CellRendererToggle(); column1.PackStart(toggleRenderer, true); column1.AddAttribute(toggleRenderer, "active", 0); column1.Title = "Column 1"; // And add a text renderer to the same column var textRenderer1 = new Gtk.CellRendererText(); column1.PackStart(textRenderer1, true); column1.AddAttribute(textRenderer1, "text", 1); // Now add a plain text column var column2 = new Gtk.TreeViewColumn(); var textRenderer2 = new Gtk.CellRendererText(); column2.PackStart(textRenderer2, true); column2.AddAttribute(textRenderer2, "text", 2); column2.Title = "Column 2"; this.TreeView.AppendColumn(column1); this.TreeView.AppendColumn(column2); this.Add(this.TreeView); }
public NoteEditor() { this.Build(); var store = new Gtk.ListStore(typeof(string), typeof(string)); store.AppendValues("gtk-edit", "no, you are the fuel"); var column = new Gtk.TreeViewColumn(); var iconRenderer = new Gtk.CellRendererPixbuf(); column.PackStart(iconRenderer, false); column.AddAttribute(iconRenderer, "stock-id", 0); var textRenderer = new Gtk.CellRendererText(); column.PackStart(textRenderer, true); column.AddAttribute(textRenderer, "text", 1); NoteChildrenTreeView.Model = store; NoteChildrenTreeView.AppendColumn(column); // http://www.mono-project.com/GtkSharp_TreeView_Tutorial // http://afaikblog.files.wordpress.com/2012/05/edit-item1.png // http://james.newtonking.com/projects/json/help/ // http://mono.1490590.n4.nabble.com/NodeView-TreeView-Image-and-Text-into-the-same-column-td1546566.html // OKAY, I NEED TO DECIDE HOW I AM GOING TO BIND THINGS // I definitely want a ViewModel. }
public FileList() { Items = new ArrayList (); store = new Gtk.ListStore (typeof (string), typeof (string), typeof(string), typeof(FileListItem), typeof (Gdk.Pixbuf)); Model = store; HeadersVisible = true; HeadersClickable = true; Reorderable = true; RulesHint = true; Gtk.TreeViewColumn name_column = new Gtk.TreeViewColumn (); name_column.Title = GettextCatalog.GetString ("Files"); Gtk.TreeViewColumn size_column = new Gtk.TreeViewColumn (); size_column.Title = GettextCatalog.GetString ("Size"); Gtk.TreeViewColumn modi_column = new Gtk.TreeViewColumn (); modi_column.Title = GettextCatalog.GetString ("Last modified"); Gtk.CellRendererPixbuf pix_render = new Gtk.CellRendererPixbuf (); name_column.PackStart (pix_render, false); name_column.AddAttribute (pix_render, "pixbuf", 4); Gtk.CellRendererText render1 = new Gtk.CellRendererText (); name_column.PackStart (render1, false); name_column.AddAttribute (render1, "text", 0); Gtk.CellRendererText render2 = new Gtk.CellRendererText (); size_column.PackStart (render2, false); size_column.AddAttribute (render2, "text", 1); Gtk.CellRendererText render3 = new Gtk.CellRendererText (); modi_column.PackStart (render3, false); modi_column.AddAttribute (render3, "text", 2); AppendColumn(name_column); AppendColumn(size_column); AppendColumn(modi_column); this.PopupMenu += new Gtk.PopupMenuHandler (OnPopupMenu); this.ButtonReleaseEvent += new Gtk.ButtonReleaseEventHandler (OnButtonReleased); this.Selection.Changed += new EventHandler (OnSelectionChanged); watcher = new FileSystemWatcher (); if(watcher != null) { watcher.NotifyFilter = NotifyFilters.FileName; watcher.EnableRaisingEvents = false; watcher.Renamed += new RenamedEventHandler(fileRenamed); watcher.Deleted += new FileSystemEventHandler(fileDeleted); watcher.Created += new FileSystemEventHandler(fileCreated); watcher.Changed += new FileSystemEventHandler(fileChanged); } }
public FileList() { Items = new ArrayList(); store = new Gtk.ListStore(typeof(string), typeof(string), typeof(string), typeof(FileListItem), typeof(Gdk.Pixbuf)); Model = store; HeadersVisible = true; HeadersClickable = true; RulesHint = true; Gtk.TreeViewColumn name_column = new Gtk.TreeViewColumn(); name_column.Title = GettextCatalog.GetString("Files"); Gtk.TreeViewColumn size_column = new Gtk.TreeViewColumn(); size_column.Title = GettextCatalog.GetString("Size"); Gtk.TreeViewColumn modi_column = new Gtk.TreeViewColumn(); modi_column.Title = GettextCatalog.GetString("Last modified"); Gtk.CellRendererPixbuf pix_render = new Gtk.CellRendererPixbuf(); name_column.PackStart(pix_render, false); name_column.AddAttribute(pix_render, "pixbuf", 4); name_column.PackStart(textRender, false); name_column.AddAttribute(textRender, "text", 0); size_column.PackStart(textRender, false); size_column.AddAttribute(textRender, "text", 1); modi_column.PackStart(textRender, false); modi_column.AddAttribute(textRender, "text", 2); AppendColumn(name_column); AppendColumn(size_column); AppendColumn(modi_column); this.PopupMenu += new Gtk.PopupMenuHandler(OnPopupMenu); this.ButtonReleaseEvent += new Gtk.ButtonReleaseEventHandler(OnButtonReleased); this.Selection.Changed += new EventHandler(OnSelectionChanged); watcher = new FileSystemWatcher(); watcher.EnableRaisingEvents = false; watcher.NotifyFilter = NotifyFilters.FileName; watcher.Created += DispatchService.GuiDispatch(new FileSystemEventHandler(fileCreated)); watcher.Deleted += DispatchService.GuiDispatch(new FileSystemEventHandler(fileDeleted)); watcher.Changed += DispatchService.GuiDispatch(new FileSystemEventHandler(fileChanged)); watcher.Renamed += DispatchService.GuiDispatch(new RenamedEventHandler(fileRenamed)); }
public CodeFormattingPanelWidget(CodeFormattingPanel panel, OptionsDialog dialog) { this.Build(); this.panel = panel; this.dialog = dialog; store = new Gtk.ListStore(typeof(MimeTypePanelData), typeof(Gdk.Pixbuf), typeof(string)); tree.Model = store; boxButtons.Visible = panel.DataObject is PolicySet; Gtk.CellRendererText crt = new Gtk.CellRendererText(); Gtk.CellRendererPixbuf crp = new Gtk.CellRendererPixbuf(); Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); col.Title = GettextCatalog.GetString("File Type"); col.PackStart(crp, false); col.PackStart(crt, true); col.AddAttribute(crp, "pixbuf", 1); col.AddAttribute(crt, "text", 2); tree.AppendColumn(col); store.SetSortColumnId(2, Gtk.SortType.Ascending); CellRendererComboBox comboCell = new CellRendererComboBox(); comboCell.Changed += OnPolicySelectionChanged; Gtk.TreeViewColumn polCol = tree.AppendColumn(GettextCatalog.GetString("Policy"), comboCell, new Gtk.TreeCellDataFunc(OnSetPolicyData)); tree.Selection.Changed += delegate { Gtk.TreeIter it; tree.Selection.GetSelected(out it); Gtk.TreeViewColumn ccol; Gtk.TreePath path; tree.GetCursor(out path, out ccol); if (ccol == polCol) { tree.SetCursor(path, ccol, true); } }; Fill(); UpdateButtons(); tree.Selection.Changed += delegate { UpdateButtons(); }; }
public static void AddColumn(this Gtk.TreeView self, string name, int index) { var nameRenderer = new Gtk.CellRendererText(); var nameColumn = new Gtk.TreeViewColumn(name, nameRenderer); nameColumn.AddAttribute(nameRenderer, "text", index); self.AppendColumn(nameColumn); }
void SetupVoteGrid() { grdVotes.Model = _votes; //grdVotes.ModifyFont (Pango.FontDescription.FromString ("normal 8")); Gtk.CellRendererText crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("player", crt, "text", 0); crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("votes", crt, "text", 1); crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("posts", crt, "text", 2); crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("post", crt, "text", 3); crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("time", crt, "text", 4); Gtk.CellRendererCombo crcb = new Gtk.CellRendererCombo(); crcb.Editable = true; crcb.Model = _validVotes; crcb.TextColumn = 0; crcb.Edited += VoteFixed; Gtk.TreeViewColumn tvColumn = new Gtk.TreeViewColumn(); tvColumn.PackStart(crcb, true); tvColumn.Title = "votes for"; tvColumn.AddAttribute(crcb, "text", 5); grdVotes.AppendColumn(tvColumn); crt = new Gtk.CellRendererText(); grdVotes.AppendColumn("content", crt, "text", 6); }
Gtk.TreeView BuildTreeViewDest() { var toret = new Gtk.TreeView(); var artistColumn = new Gtk.TreeViewColumn { Title = "Selected artist" }; var songColumn = new Gtk.TreeViewColumn { Title = "Selected song title" }; // Add the columns to the TreeView toret.AppendColumn(artistColumn); toret.AppendColumn(songColumn); // Create a model that will hold two strings - Artist Name and Song Title var musicListStore = new Gtk.ListStore(typeof(string), typeof(string)); var artistNameCell = new Gtk.CellRendererText(); var songTitleCell = new Gtk.CellRendererText(); artistColumn.PackStart(artistNameCell, true); songColumn.PackStart(songTitleCell, true); artistColumn.AddAttribute(artistNameCell, "text", 0); songColumn.AddAttribute(songTitleCell, "text", 1); toret.Selection.Mode = Gtk.SelectionMode.None; toret.Model = musicListStore; toret.Selection.Mode = Gtk.SelectionMode.Multiple; return(toret); }
public TreeViewExample() { Gtk.Window window = new Gtk.Window("TreeView Example"); window.SetSizeRequest(500, 200); Gtk.TreeView tree = new Gtk.TreeView(); window.Add(tree); Gtk.TreeViewColumn Parent = new Gtk.TreeViewColumn(); Parent.Title = "Parent"; Gtk.CellRendererText Parent1 = new Gtk.CellRendererText(); Parent.PackStart(Parent1, true); Gtk.TreeViewColumn ChildColoumn1 = new Gtk.TreeViewColumn(); ChildColoumn1.Title = "Column 1"; Gtk.CellRendererText Child1 = new Gtk.CellRendererText(); ChildColoumn1.PackStart(Child1, true); Gtk.TreeViewColumn ChildColumn2 = new Gtk.TreeViewColumn(); ChildColumn2.Title = "Column 2"; Gtk.CellRendererText Child2 = new Gtk.CellRendererText(); ChildColumn2.PackStart(Child2, true); tree.AppendColumn(Parent); tree.AppendColumn(ChildColoumn1); tree.AppendColumn(ChildColumn2); Parent.AddAttribute(Parent1, "text", 0); ChildColoumn1.AddAttribute(Child1, "text", 1); ChildColumn2.AddAttribute(Child2, "text", 2); Gtk.TreeStore Tree = new Gtk.TreeStore(typeof(string), typeof(string), typeof(string)); Gtk.TreeIter iter = Tree.AppendValues("Parent1"); Tree.AppendValues(iter, "Child1", "Node 1"); iter = Tree.AppendValues("Parent2"); Tree.AppendValues(iter, "Child1", "Node 1", "Node 2"); tree.Model = Tree; window.ShowAll(); }
protected override void OnElementChanged(ElementChangedEventArgs <TreeView> e) { if (Control == null) { _treeView = new Gtk.TreeView(); _treeView.HeadersVisible = false; Gtk.TreeViewColumn column = new Gtk.TreeViewColumn(); Gtk.CellRendererText cell = new Gtk.CellRendererText(); column.PackStart(cell, true); column.AddAttribute(cell, "text", 0); column.SetCellDataFunc(cell, new Gtk.TreeCellDataFunc(OnTextFunc)); _treeView.AppendColumn(column); _treeView.RowExpanded += OnRowExpanded; _treeView.RowCollapsed += OnRowCollapsed; _treeView.Selection.Changed += OnSelectionChanged; Add(_treeView); _treeView.ShowAll(); SetNativeControl(_treeView); } if (e.NewElement != null) { UpdateItems(); UpdateRowHeight(); UpdateRowTextColor(); } base.OnElementChanged(e); }
public SearchGroupWidget() { this.Build(); image = new Gtk.Image(); image.SetFromIconName("system-search", Gtk.IconSize.Dnd); label = new Gtk.Label(Mono.Unix.Catalog.GetString("Search Group")); label.Show(); userTreeview.Selection.Mode = Gtk.SelectionMode.Multiple; user_id_column = new Gtk.TreeViewColumn(); user_id_column.Title = Mono.Unix.Catalog.GetString("Group ID"); user_id_cell_renderer = new Gtk.CellRendererText(); user_id_column.PackStart(user_id_cell_renderer, true); user_id_column.AddAttribute(user_id_cell_renderer, "text", 0); userTreeview.AppendColumn(user_id_column); store = new Gtk.ListStore(typeof(string), typeof(string)); userTreeview.Model = store; Gtk.TreeViewColumn user_name_column = new Gtk.TreeViewColumn(); user_name_column.Title = Mono.Unix.Catalog.GetString("Description"); Gtk.CellRendererText user_name_cell_renderer = new Gtk.CellRendererText(); user_name_column.PackStart(user_name_cell_renderer, true); user_name_column.AddAttribute(user_name_cell_renderer, "text", 1); userTreeview.AppendColumn(user_name_column); userTreeview.ShowAll(); //store.AppendValues("a","b"); }
/// <summary> /// Creates the static columns in the downloader. /// </summary> /// TODO: i18n protected void BuildTreeColumns() { // New column for the filename Gtk.TreeViewColumn filenameColumn = new Gtk.TreeViewColumn (); filenameColumn.Title = "Filename"; // Set this to be the largest column filenameColumn.Expand = true; // The cell that stores the filename Gtk.CellRendererText filenameCell = new Gtk.CellRendererText (); // Add the cell to the column and expand filenameColumn.PackStart (filenameCell, true); // Let's add a speed column Gtk.TreeViewColumn speedColumn = new Gtk.TreeViewColumn (); speedColumn.Title = "Speed"; speedColumn.Expand = true; Gtk.CellRendererText speedCell = new Gtk.CellRendererText (); speedColumn.PackStart (speedCell, true); // Think about additional columns, but avoid redundant infos or // uninteresting stuff at all cost! Can always be added later if // it's possible to select wanted columns as in banshee. // Add all the columns to the tree view. downloadTree.AppendColumn (filenameColumn); downloadTree.AppendColumn (speedColumn); // Tell the cell renderers how to display the model filenameColumn.AddAttribute (filenameCell, "text", 0); speedColumn.AddAttribute (speedCell, "text", 1); }
public void SetupColumns() { //setup columns Gtk.TreeViewColumn FlagCol = new Gtk.TreeViewColumn(); Gtk.CellRendererPixbuf pixbuf = new Gtk.CellRendererPixbuf(); FlagCol.PackStart(pixbuf, false); treeEnableLang.AppendColumn(FlagCol); FlagCol.AddAttribute(pixbuf, "pixbuf", 0); Gtk.TreeViewColumn LanguageCol = new Gtk.TreeViewColumn(); Gtk.CellRendererText text = new Gtk.CellRendererText(); LanguageCol.PackStart(text, true); treeEnableLang.AppendColumn(LanguageCol); LanguageCol.AddAttribute(text, "text", 1); /* * Gtk.TreeViewColumn IsEnabled = new Gtk.TreeViewColumn (); * Gtk.CellRendererToggle EnabledToggle = new Gtk.CellRendererToggle (); * EnabledToggle.Activatable = true; * EnabledToggle.Toggled += CheckEnable; * IsEnabled.PackStart (EnabledToggle, false); * treeEnableLang.AppendColumn (IsEnabled); * IsEnabled.AddAttribute (EnabledToggle, "active", 2); * * //add a dummy column to fill the rest * Gtk.TreeViewColumn DummyCol = new Gtk.TreeViewColumn (); * Gtk.CellRendererText DummyText = new Gtk.CellRendererText (); * DummyCol.PackStart (DummyText, true); * treeEnableLang.AppendColumn (DummyCol); * DummyCol.AddAttribute (DummyText, "text", 3); */ }
public FreezeWidget() { this.Build(); msgLabel.Text = ""; image = new Gtk.Image(); image.SetFromIconName("frostwire", Gtk.IconSize.Dnd); label = new Gtk.Label(Mono.Unix.Catalog.GetString("Freeze Users")); label.Show(); searchImage.Animation = new Gdk.PixbufAnimation(null, "llum.watch.gif"); Gtk.TreeViewColumn available_groups_column = new Gtk.TreeViewColumn(); available_groups_column.Title = Mono.Unix.Catalog.GetString("Available groups"); Gtk.CellRendererText available_groups_cell = new Gtk.CellRendererText(); available_groups_column.PackStart(available_groups_cell, true); available_groups_column.AddAttribute(available_groups_cell, "text", 0); availableGroupsTreeview.AppendColumn(available_groups_column); available_groups_store = new Gtk.TreeStore(typeof(string)); availableGroupsTreeview.Model = available_groups_store; availableGroupsTreeview.Selection.Mode = Gtk.SelectionMode.Multiple; Gtk.TreeViewColumn frozen_groups_column = new Gtk.TreeViewColumn(); frozen_groups_column.Title = Mono.Unix.Catalog.GetString("Frozen groups"); Gtk.CellRendererText frozen_groups_cell = new Gtk.CellRendererText(); frozen_groups_column.PackStart(frozen_groups_cell, true); frozen_groups_column.AddAttribute(frozen_groups_cell, "text", 0); frozenGroupsTreeview.AppendColumn(frozen_groups_column); frozen_groups_store = new Gtk.TreeStore(typeof(string)); frozenGroupsTreeview.Model = frozen_groups_store; frozenGroupsTreeview.Selection.Mode = Gtk.SelectionMode.Multiple; Gtk.TreeViewColumn available_users_column = new Gtk.TreeViewColumn(); available_users_column.Title = Mono.Unix.Catalog.GetString("Available users"); Gtk.CellRendererText available_users_cell = new Gtk.CellRendererText(); available_users_column.PackStart(available_users_cell, true); available_users_column.AddAttribute(available_users_cell, "text", 0); availableUsersTreeview.AppendColumn(available_users_column); available_users_store = new Gtk.TreeStore(typeof(string)); availableUsersTreeview.Model = available_users_store; availableUsersTreeview.Selection.Mode = Gtk.SelectionMode.Multiple; Gtk.TreeViewColumn frozen_users_column = new Gtk.TreeViewColumn(); frozen_users_column.Title = Mono.Unix.Catalog.GetString("Frozen users"); Gtk.CellRendererText frozen_users_cell = new Gtk.CellRendererText(); frozen_users_column.PackStart(frozen_users_cell, true); frozen_users_column.AddAttribute(frozen_users_cell, "text", 0); frozenUsersTreeview.AppendColumn(frozen_users_column); frozen_users_store = new Gtk.TreeStore(typeof(string)); frozenUsersTreeview.Model = frozen_users_store; frozenUsersTreeview.Selection.Mode = Gtk.SelectionMode.Multiple; disable_gui(); }
public FlagsSelectorDialog(Gtk.Window parent, Type enumDesc, ulong flags, string title) { this.flags = flags; this.parent = parent; Gtk.ScrolledWindow sc = new Gtk.ScrolledWindow(); sc.HscrollbarPolicy = Gtk.PolicyType.Automatic; sc.VscrollbarPolicy = Gtk.PolicyType.Automatic; sc.ShadowType = Gtk.ShadowType.In; sc.BorderWidth = 6; treeView = new Gtk.TreeView(); sc.Add(treeView); dialog = new Gtk.Dialog(); IdeTheme.ApplyTheme(dialog); dialog.VBox.Add(sc); dialog.AddButton(Gtk.Stock.Cancel, Gtk.ResponseType.Cancel); dialog.AddButton(Gtk.Stock.Ok, Gtk.ResponseType.Ok); store = new Gtk.ListStore(typeof(bool), typeof(string), typeof(ulong)); treeView.Model = store; treeView.HeadersVisible = false; Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); Gtk.CellRendererToggle tog = new Gtk.CellRendererToggle(); tog.Toggled += new Gtk.ToggledHandler(OnToggled); col.PackStart(tog, false); col.AddAttribute(tog, "active", 0); Gtk.CellRendererText crt = new Gtk.CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", 1); treeView.AppendColumn(col); values = System.Enum.GetValues(enumDesc); foreach (object value in values) { ulong val = Convert.ToUInt64(value); store.AppendValues((flags == 0 && val == 0) || ((flags & val) != 0), value.ToString(), val); } }
public FlagsSelectorDialog (Gtk.Window parent, Type enumDesc, ulong flags, string title) { this.flags = flags; this.parent = parent; Gtk.ScrolledWindow sc = new Gtk.ScrolledWindow (); sc.HscrollbarPolicy = Gtk.PolicyType.Automatic; sc.VscrollbarPolicy = Gtk.PolicyType.Automatic; sc.ShadowType = Gtk.ShadowType.In; sc.BorderWidth = 6; treeView = new Gtk.TreeView (); sc.Add (treeView); dialog = new Gtk.Dialog (); IdeTheme.ApplyTheme (dialog); dialog.VBox.Add (sc); dialog.AddButton (Gtk.Stock.Cancel, Gtk.ResponseType.Cancel); dialog.AddButton (Gtk.Stock.Ok, Gtk.ResponseType.Ok); store = new Gtk.ListStore (typeof(bool), typeof(string), typeof(ulong)); treeView.Model = store; treeView.HeadersVisible = false; Gtk.TreeViewColumn col = new Gtk.TreeViewColumn (); Gtk.CellRendererToggle tog = new Gtk.CellRendererToggle (); tog.Toggled += new Gtk.ToggledHandler (OnToggled); col.PackStart (tog, false); col.AddAttribute (tog, "active", 0); Gtk.CellRendererText crt = new Gtk.CellRendererText (); col.PackStart (crt, true); col.AddAttribute (crt, "text", 1); treeView.AppendColumn (col); values = System.Enum.GetValues (enumDesc); foreach (object value in values) { ulong val = Convert.ToUInt64 (value); store.AppendValues ((flags == 0 && val == 0) || ((flags & val) != 0), value.ToString (), val); } }
Gtk.TreeView BuildTreeView() { var toret = new Gtk.TreeView(); // Index column var columnIndex = new Gtk.TreeViewColumn { Title = "#" }; var indexRenderer = new Gtk.CellRendererText(); columnIndex.PackStart(indexRenderer, expand: true); columnIndex.AddAttribute(indexRenderer, "text", 0); // Data column var columnData = new Gtk.TreeViewColumn { Title = "Mixed column" }; var dataRenderer1 = new Gtk.CellRendererPixbuf(); columnData.PackStart(dataRenderer1, expand: false); columnData.AddAttribute(dataRenderer1, "pixbuf", 1); var dataRenderer2 = new Gtk.CellRendererText(); columnData.PackStart(dataRenderer2, expand: true); columnData.AddAttribute(dataRenderer2, "text", 2); toret.AppendColumn(columnIndex); toret.AppendColumn(columnData); // Model var store = new Gtk.ListStore(typeof(string), typeof(Gdk.Pixbuf), typeof(string)); toret.Model = store; store.AppendValues("1", this.IconYes, "works"); store.AppendValues("2", this.IconNo, "does not work"); return(toret); }
void IPlugin.Init(object context) { solidIDE = context as ISolidIDE; mainWindow = solidIDE.GetMainWindow(); // Dock with Tree Gtk.ScrolledWindow treeViewScrollWindow = new Gtk.ScrolledWindow(); Gtk.Viewport treeViewViewport = new Gtk.Viewport(); treeViewScrollWindow.Add(treeViewViewport); treeView = new Gtk.TreeView(); treeViewViewport.Add(treeView); treeViewScrollWindow.ShowAll(); Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); Gtk.CellRendererText colAssemblyCell = new Gtk.CellRendererText(); col.PackStart(colAssemblyCell, true); col.AddAttribute(colAssemblyCell, "text", 0); treeView.AppendColumn(col); treeView.Model = new Gtk.TreeStore(typeof(string), typeof(Tool <Gdk.Event, Cairo.Context, Model>), typeof(Shape)); treeView.RowActivated += HandleRowActivated; treeView.CursorChanged += HandleCursorChanged; Gtk.Drag.SourceSet( treeView, Gdk.ModifierType.Button1Mask, new Gtk.TargetEntry[] { new Gtk.TargetEntry("application/x-solidide.shape", Gtk.TargetFlags.App, 0) }, Gdk.DragAction.Copy ); /*treeView.EnableModelDragSource( * Gdk.ModifierType.None, * new Gtk.TargetEntry[] { new TargetEntry("application/SolidIDE", 0, 0) }, * Gdk.DragAction.Default);*/ treeView.DragBegin += HandleTreeViewDragBegin; treeView.DragDataGet += HandleTreeViewDragDataGet; //treeView.DragDrop += HandleTreeViewDragDrop; toolboxDockItem = mainWindow.DockFrame.AddItem("Toolbox"); toolboxDockItem.Behavior = DockItemBehavior.Normal; toolboxDockItem.Expand = true; toolboxDockItem.DrawFrame = true; toolboxDockItem.Label = "Toolbox"; toolboxDockItem.Content = treeViewScrollWindow; toolboxDockItem.DefaultVisible = true; toolboxDockItem.Visible = true; UpdateToolbox(); // Menu var viewMenuItem = solidIDE.GetMenuItem <Gtk.ImageMenuItem>("View"); solidIDE.GetMenuItem <Gtk.TearoffMenuItem>("View", "TearoffView"); var toolboxMenuItem = solidIDE.GetMenuItem <Gtk.ImageMenuItem>("View", "Toolbox"); toolboxMenuItem.Activated += HandleShowToolboxActivated; }
public override void Initialize () { base.Initialize (); Widget.HeadersVisible = false; theColumn = new Gtk.TreeViewColumn (); Widget.AppendColumn (theColumn); var cr = new Gtk.CellRendererText (); theColumn.PackStart (cr, false); theColumn.AddAttribute (cr, "text", 0); }
public OpenGame(POG.Forum.TwoPlusTwoForum forum) { _lobby = forum.Lobby(); this.Build(); Gtk.TreeViewColumn c = new Gtk.TreeViewColumn(); c.Title = "POG Games"; treeThreads.AppendColumn(c); treeThreads.Model = _threads; Gtk.CellRendererText crt = new Gtk.CellRendererText(); c.PackStart(crt, true); c.AddAttribute(crt, "text", 0); //treeThreads.ModifyFont (Pango.FontDescription.FromString ("normal 8")); }
public override void Initialize() { base.Initialize(); Widget.HeadersVisible = false; theColumn = new Gtk.TreeViewColumn(); Widget.AppendColumn(theColumn); var cr = new Gtk.CellRendererText(); theColumn.PackStart(cr, false); theColumn.AddAttribute(cr, "text", 0); }
public TreeViewExample() { // Create a Window Gtk.Window window = new Gtk.Window("TreeView Example"); window.SetSizeRequest(500, 200); // Create our TreeView Gtk.TreeView tree = new Gtk.TreeView(); // Add our tree to the window window.Add(tree); // Create a column for the artist name Gtk.TreeViewColumn artistColumn = new Gtk.TreeViewColumn(); artistColumn.Title = "Artist"; // Create the text cell that will display the artist name Gtk.CellRendererText artistNameCell = new Gtk.CellRendererText(); // Add the cell to the column artistColumn.PackStart(artistNameCell, true); // Create a column for the song title Gtk.TreeViewColumn songColumn = new Gtk.TreeViewColumn(); songColumn.Title = "Song Title"; // Do the same for the song title column Gtk.CellRendererText songTitleCell = new Gtk.CellRendererText(); songColumn.PackStart(songTitleCell, true); // Add the columns to the TreeView tree.AppendColumn(artistColumn); tree.AppendColumn(songColumn); // Tell the Cell Renderers which items in the model to display artistColumn.AddAttribute(artistNameCell, "text", 0); songColumn.AddAttribute(songTitleCell, "text", 1); // Create a model that will hold two strings - Artist Name and Song Title Gtk.ListStore musicListStore = new Gtk.ListStore(typeof(string), typeof(string)); // Add some data to the store musicListStore.AppendValues("Garbage", "Dog New Tricks"); // Assign the model to the TreeView tree.Model = musicListStore; // Show the window and everything on it window.ShowAll(); }
public SendMessagesOverviewWindow() { // Create window Gtk.Window window = new Gtk.Window ( "Verzonden Berichten" ); window.SetSizeRequest (700, 200); // Add tree to window Gtk.TreeView tree = new Gtk.TreeView (); window.Add (tree); // Create the column for displaying the telephone number. Gtk.TreeViewColumn numberReceiverColumn = new Gtk.TreeViewColumn (); numberReceiverColumn.Title = "Telefoon nummer"; numberReceiverColumn.MinWidth = 200; // Create the text cell that will display the telephone number. Gtk.CellRendererText numberReceiverCell = new Gtk.CellRendererText (); // Add the cell to the column. numberReceiverColumn.PackStart (numberReceiverCell, true); // Create the column for displaing the message. Gtk.TreeViewColumn messageColumn = new Gtk.TreeViewColumn (); messageColumn.Title = "Bericht"; messageColumn.MinWidth = 300; // Create the text cell that will display the message. Gtk.CellRendererText messageCell = new Gtk.CellRendererText (); messageColumn.PackStart (messageCell, true); // Create the column for displaying the date send. Gtk.TreeViewColumn sendAtColumn = new Gtk.TreeViewColumn (); sendAtColumn.Title = "Verstuurd op"; sendAtColumn.MinWidth = 200; // Create the text cell that will display the date send. Gtk.CellRendererText sendAtCell = new Gtk.CellRendererText (); sendAtColumn.PackStart (sendAtCell, true); tree.AppendColumn (numberReceiverColumn); tree.AppendColumn (messageColumn); tree.AppendColumn (sendAtColumn); // Tell the cell renderers which items in the model to display numberReceiverColumn.AddAttribute (numberReceiverCell, "text", 0); messageColumn.AddAttribute (messageCell, "text", 1); sendAtColumn.AddAttribute (sendAtCell, "text", 2); // Assign the model to the TreeView tree.Model = this.getMessageList (); // Show the window and everythin on it. window.ShowAll (); }
public RTPrefs() { RTPreferences prefs = new RTPreferences(); this.Build(); nameColumn = new Gtk.TreeViewColumn(); nameColumn.Title = "Name"; urlColumn = new Gtk.TreeViewColumn(); urlColumn.Title = "URL"; RTTree.AppendColumn(nameColumn); RTTree.AppendColumn(urlColumn); rtListStore = new Gtk.ListStore(typeof(string), typeof(string)); RTTree.Model = rtListStore; Gtk.CellRendererText nameNameCell = new Gtk.CellRendererText(); nameNameCell.Editable = true; nameNameCell.Edited += OnNameCellEdited; nameColumn.PackStart(nameNameCell, true); Gtk.CellRendererText urlTitleCell = new Gtk.CellRendererText(); urlTitleCell.Editable = true; urlTitleCell.Edited += OnURLCellEdited; urlColumn.PackStart(urlTitleCell, true); nameColumn.AddAttribute(nameNameCell, "text", 0); urlColumn.AddAttribute(urlTitleCell, "text", 1); if (!string.IsNullOrEmpty(prefs.URLs)) { string[] urlbits = prefs.URLs.Split('|'); for (int i = 0; i < urlbits.Length; i++) { string name = urlbits[i]; string uri = urlbits[++i]; Uri url; try { url = new System.Uri(uri); } catch (System.UriFormatException) { continue; } rtListStore.AppendValues(name, url.ToString()); } } }
public LogWindow() : base("Log Model") { this.Move(0,0); this.SetSizeRequest(600, 500); Gtk.TreeView treeviewLog = new Gtk.TreeView(); Gtk.TreeViewColumn idColumn = new Gtk.TreeViewColumn (); idColumn.Title = "Id"; Gtk.TreeViewColumn typeColumn = new Gtk.TreeViewColumn (); typeColumn.Title = "Type"; Gtk.TreeViewColumn descriptionColumn = new Gtk.TreeViewColumn (); descriptionColumn.Title = "Description"; logListStore = new Gtk.ListStore (typeof (string), typeof (string), typeof (string)); treeviewLog.AppendColumn(idColumn); treeviewLog.AppendColumn(typeColumn); treeviewLog.AppendColumn(descriptionColumn); treeviewLog.Model = logListStore; Gtk.CellRendererText idCell = new Gtk.CellRendererText (); idColumn.PackStart(idCell, true); Gtk.CellRendererText typeCell = new Gtk.CellRendererText (); typeColumn.PackStart(typeCell, true); Gtk.CellRendererText descriptionCell = new Gtk.CellRendererText (); descriptionColumn.PackStart(descriptionCell, true); idColumn.AddAttribute(idCell, "text", 0); typeColumn.AddAttribute(typeCell, "text", 1); descriptionColumn.AddAttribute(descriptionCell, "text", 2); Gtk.ScrolledWindow scWindow = new Gtk.ScrolledWindow(); scWindow.Add(treeviewLog); this.Add(scWindow); }
public RTPrefs() { RTPreferences prefs = new RTPreferences(); this.Build(); nameColumn = new Gtk.TreeViewColumn (); nameColumn.Title = "Name"; urlColumn = new Gtk.TreeViewColumn (); urlColumn.Title = "URL"; RTTree.AppendColumn (nameColumn); RTTree.AppendColumn (urlColumn); rtListStore = new Gtk.ListStore (typeof (string), typeof (string)); RTTree.Model = rtListStore; Gtk.CellRendererText nameNameCell = new Gtk.CellRendererText (); nameNameCell.Editable = true; nameNameCell.Edited += OnNameCellEdited; nameColumn.PackStart (nameNameCell, true); Gtk.CellRendererText urlTitleCell = new Gtk.CellRendererText (); urlTitleCell.Editable = true; urlTitleCell.Edited += OnURLCellEdited; urlColumn.PackStart (urlTitleCell, true); nameColumn.AddAttribute (nameNameCell, "text", 0); urlColumn.AddAttribute (urlTitleCell, "text", 1); if (!string.IsNullOrEmpty (prefs.URLs)) { string[] urlbits = prefs.URLs.Split('|'); for (int i = 0; i < urlbits.Length; i++) { string name = urlbits[i]; string uri = urlbits[++i]; Uri url; try { url = new System.Uri(uri); } catch (System.UriFormatException) { continue; } rtListStore.AppendValues (name, url.ToString()); } } }
public ParamsWindow(string[] parameters) : base(Gtk.WindowType.Toplevel, "ParamsWindow") { ((Gtk.Dialog)Window).AddButton("gtk-close", Gtk.ResponseType.Cancel); treeModel = new Gtk.ListStore(typeof(int), typeof(string), typeof(string), typeof(string)); ParamsTree.Model = treeModel; var indexColumn = new Gtk.TreeViewColumn { Title = "Index" }; ParamsTree.AppendColumn(indexColumn); var nameColumn = new Gtk.TreeViewColumn { Title = "Name" }; ParamsTree.AppendColumn(nameColumn); var typeColumn = new Gtk.TreeViewColumn { Title = "Type" }; ParamsTree.AppendColumn(typeColumn); var dataColumn = new Gtk.TreeViewColumn { Title = "Data" }; ParamsTree.AppendColumn(dataColumn); var indexCell = new Gtk.CellRendererText(); indexColumn.PackStart(indexCell, true); var nameCell = new Gtk.CellRendererText(); nameColumn.PackStart(nameCell, true); var typeCell = new Gtk.CellRendererText(); typeColumn.PackStart(typeCell, true); var dataCell = new Gtk.CellRendererText(); dataColumn.PackStart(dataCell, true); indexColumn.AddAttribute(indexCell, "text", 0); nameColumn.AddAttribute(nameCell, "text", 1); typeColumn.AddAttribute(nameCell, "text", 2); dataColumn.AddAttribute(dataCell, "text", 3); var index = 0; foreach (var param in parameters) { treeModel.AppendValues(index, "#" + index, "unknown", param); index++; } Window.SetSizeRequest(500, System.Math.Min(500, 100 + index * 20)); }
public LogWindow() : base("Log Model") { this.Move(0, 0); this.SetSizeRequest(600, 500); Gtk.TreeView treeviewLog = new Gtk.TreeView(); Gtk.TreeViewColumn idColumn = new Gtk.TreeViewColumn(); idColumn.Title = "Id"; Gtk.TreeViewColumn typeColumn = new Gtk.TreeViewColumn(); typeColumn.Title = "Type"; Gtk.TreeViewColumn descriptionColumn = new Gtk.TreeViewColumn(); descriptionColumn.Title = "Description"; logListStore = new Gtk.ListStore(typeof(string), typeof(string), typeof(string)); treeviewLog.AppendColumn(idColumn); treeviewLog.AppendColumn(typeColumn); treeviewLog.AppendColumn(descriptionColumn); treeviewLog.Model = logListStore; Gtk.CellRendererText idCell = new Gtk.CellRendererText(); idColumn.PackStart(idCell, true); Gtk.CellRendererText typeCell = new Gtk.CellRendererText(); typeColumn.PackStart(typeCell, true); Gtk.CellRendererText descriptionCell = new Gtk.CellRendererText(); descriptionColumn.PackStart(descriptionCell, true); idColumn.AddAttribute(idCell, "text", 0); typeColumn.AddAttribute(typeCell, "text", 1); descriptionColumn.AddAttribute(descriptionCell, "text", 2); Gtk.ScrolledWindow scWindow = new Gtk.ScrolledWindow(); scWindow.Add(treeviewLog); this.Add(scWindow); }
void SetupTreeView() { for (int i = 0; i < 4; i++) { var text_column = new Gtk.TreeViewColumn(); var text_renderer = new Gtk.CellRendererText(); text_column.PackStart(text_renderer, true); text_column.AddAttribute(text_renderer, "text", i); if (i == 1 || i == 2) { text_renderer.Xalign = 1; } logView.AppendColumn(text_column); } // logModel = new Gtk.TreeStore(typeof(string), typeof(string), typeof(string), typeof(string)); logView.Model = logModel; }
private void SetupColumns() { //setup columns /* * Gtk.TreeViewColumn IconCol = new Gtk.TreeViewColumn(); * Gtk.CellRendererPixbuf pixbuf = new Gtk.CellRendererPixbuf (); * IconCol.PackStart(pixbuf, false); * treeCodes.AppendColumn(IconCol); * IconCol.AddAttribute(pixbuf, "pixbuf", 0); */ Gtk.TreeViewColumn CodeCol = new Gtk.TreeViewColumn(); Gtk.CellRendererText text = new Gtk.CellRendererText(); CodeCol.PackStart(text, true); treeCodes.AppendColumn(CodeCol); CodeCol.AddAttribute(text, "text", 0); }
protected override void addHeaderColumn(VirtualGridHeaderColumn headercolumn) { //throw new Exception("is it used ??"); base.addHeaderColumn(headercolumn); Gtk.TreeViewColumn column = new Gtk.TreeViewColumn(); column.Visible = headercolumn.Visible; column.Title = headercolumn.ColumnName; column.Resizable = true; //Gtk.CellRendererText artistNameCell = new Gtk.CellRendererText(); Gtk.CellRenderer renderer; //Gtk.CellRendererCombo artistNameCell = new Gtk.CellRendererCombo(); if (!String.IsNullOrEmpty(headercolumn.Renderer)) { Type tp = Type.GetType(headercolumn.Renderer); renderer = (Gtk.CellRenderer)Sharpend.Utils.Reflection.createInstance(tp); } else { renderer = new Gtk.CellRendererText(); //renderer = treecellrenderer; } column.PackStart(renderer, true); Tree.AppendColumn(column); String attribute = "text"; if (headercolumn.ColumnType.Equals("Gdk.Pixbuf,gdk-sharp", StringComparison.OrdinalIgnoreCase)) { attribute = "pixbuf"; } if (OnTreeCellData != null) { column.SetCellDataFunc(renderer, OnTreeCellData); } column.AddAttribute(renderer, attribute, HeaderColumns.Count - 1); }
/// <summary> /// Loads the files in the Assemblies.env into the TreeView. /// </summary> /// <param name='files'> /// Files. /// </param> /// private void LoadFilesInTreeView(string [] files) { Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); Gtk.CellRendererText colAssemblyCell = new Gtk.CellRendererText(); col.PackStart(colAssemblyCell, true); col.AddAttribute(colAssemblyCell, "text", 0); if (assemblyTree.GetColumn(0) != null) { assemblyTree.Columns[0] = col; } else { assemblyTree.AppendColumn(col); } store = assemblyTree.Model as Gtk.TreeStore; if (store == null) { store = new Gtk.TreeStore(typeof(object)); } foreach (string file in files) { if (File.Exists(file)) { store.AppendValues(AssemblyDefinition.ReadAssembly(file)); } else { ShowMessageGtk(String.Format("File {0} doesn't exits.", file)); } } // Add functions managinig the visualization of those assembly definitions col.SetCellDataFunc(colAssemblyCell, new Gtk.TreeCellDataFunc(RenderAssemblyDefinition)); assemblyTree.Model = store; assemblyTree.ShowAll(); }
public TreeViewExample() { Gtk.Window window = new Gtk.Window("TreeView Example"); window.SetSizeRequest(500, 200); Gtk.TreeView tree = new Gtk.TreeView(); window.Add(tree); Gtk.TreeViewColumn artistColumn = new Gtk.TreeViewColumn(); artistColumn.Title = "Artist"; Gtk.CellRendererText artistNameCell = new Gtk.CellRendererText(); artistColumn.PackStart(artistNameCell, true); Gtk.TreeViewColumn songColumn = new Gtk.TreeViewColumn(); songColumn.Title = "Song Title"; Gtk.CellRendererText songTitleCell = new Gtk.CellRendererText(); songColumn.PackStart(songTitleCell, true); tree.AppendColumn(artistColumn); tree.AppendColumn(songColumn); artistColumn.AddAttribute(artistNameCell, "text", 0); songColumn.AddAttribute(songTitleCell, "text", 1); Gtk.TreeStore musicListStore = new Gtk.TreeStore(typeof(string), typeof(string)); Gtk.TreeIter iter = musicListStore.AppendValues("Dance"); musicListStore.AppendValues(iter, "Fannypack", "Nu Nu (Yeah Yeah) (double j and haze radio edit)"); iter = musicListStore.AppendValues("Hip-hop"); musicListStore.AppendValues(iter, "Nelly", "Country Grammer"); tree.Model = musicListStore; window.ShowAll(); }
public WindowCommandList() : base(Gtk.WindowType.Toplevel) { this.Build(); Gtk.TreeViewColumn column1 = new Gtk.TreeViewColumn(); column1.Title = "Name"; column1.MinWidth = 100; _commandsTree.AppendColumn(column1); Gtk.CellRendererText column1Renderer = new Gtk.CellRendererText(); column1.PackStart(column1Renderer, true); column1.AddAttribute(column1Renderer, "text", 0); Gtk.TreeViewColumn column2 = new Gtk.TreeViewColumn(); column2.Title = "Description"; _commandsTree.AppendColumn(column2); Gtk.CellRendererText column2Renderer = new Gtk.CellRendererText(); column2.PackStart(column2Renderer, true); column2.AddAttribute(column2Renderer, "text", 1); Gtk.ListStore lstore = new Gtk.ListStore(typeof(string), typeof(string)); _commandsTree.Model = lstore; List <KeyValuePair <string, string> > commandsSorted = new List <KeyValuePair <string, string> >(); Dictionary <string, string> commands = MainApp.GetInstance().GetCommands().GetCommands(); foreach (KeyValuePair <string, string> keyCommand in commands) { commandsSorted.Add(keyCommand); } commandsSorted.Sort((keyPair1, keyPair2) => string.Compare(keyPair1.Key, keyPair2.Key)); foreach (KeyValuePair <string, string> commandPair in commandsSorted) { lstore.AppendValues(commandPair.Key, commandPair.Value); } _commandsTree.CursorChanged += OnCursorChanged; _commandsTree.Show(); }
public static Gtk.Window CreateTreeWindow() { Gtk.Window window = new Gtk.Window("Sortable TreeView"); Gtk.TreeIter iter; Gtk.TreeViewColumn col; Gtk.CellRendererText cell; Gtk.TreeView tree = new Gtk.TreeView(); cell = new Gtk.CellRendererText(); col = new Gtk.TreeViewColumn(); col.Title = "Column 1"; col.PackStart(cell, true); col.AddAttribute(cell, "text", 0); col.SortColumnId = 0; tree.AppendColumn(col); cell = new Gtk.CellRendererText(); col = new Gtk.TreeViewColumn(); col.Title = "Column 2"; col.PackStart(cell, true); col.AddAttribute(cell, "text", 1); tree.AppendColumn(col); Gtk.TreeStore store = new Gtk.TreeStore(typeof(string), typeof(string)); iter = store.AppendValues("BBB"); store.AppendValues(iter, "AAA", "Zzz"); store.AppendValues(iter, "DDD", "Ttt"); store.AppendValues(iter, "CCC", "Ggg"); iter = store.AppendValues("AAA"); store.AppendValues(iter, "ZZZ", "Zzz"); store.AppendValues(iter, "GGG", "Ggg"); store.AppendValues(iter, "TTT", "Ttt"); Gtk.TreeModelSort sortable = new Gtk.TreeModelSort(store); sortable.SetSortFunc(0, delegate(TreeModel model, TreeIter a, TreeIter b) { string s1 = (string)model.GetValue(a, 0); string s2 = (string)model.GetValue(b, 0); return(String.Compare(s1, s2)); }); tree.Model = sortable; window.Add(tree); return(window); }
protected void BuildSwap() { SwapList = new Gtk.ListStore(typeof(string), typeof(string), typeof(string)); Swap.Model = SwapList; Gtk.CellRendererText ProcesscellView = new Gtk.CellRendererText(); var process = new Gtk.TreeViewColumn("Process", ProcesscellView); process.AddAttribute(ProcesscellView, "text", 0); Swap.AppendColumn(process); Gtk.CellRendererText TimeCellView = new Gtk.CellRendererText(); var time = new Gtk.TreeViewColumn("Time", TimeCellView); time.AddAttribute(TimeCellView, "text", 1); Swap.AppendColumn(time); Gtk.CellRendererText SizeCellView = new Gtk.CellRendererText(); var size = new Gtk.TreeViewColumn("Size", SizeCellView); size.AddAttribute(SizeCellView, "text", 2); Swap.AppendColumn(size); }
private void AddColumns(string[] Names) { for (int i = 0; i < Names.Length; i++) { // Create a column for the artist name Gtk.TreeViewColumn col = new Gtk.TreeViewColumn(); col.Title = Names[i]; // Create the text cell that will display the artist name Gtk.CellRendererText cell = new Gtk.CellRendererText(); // Add the cell to the column col.PackStart(cell, true); // Tell the Cell Renderers which items in the model to display col.AddAttribute(cell, "text", i); // Add the columns to the TreeView tree.AppendColumn(col); } Renderize(); }
public void Init() { this.Name = "OpenGraal.GraalIM.RCPlayerList"; this.Title = global::Mono.Unix.Catalog.GetString("Players"); this.Icon = global::Gdk.Pixbuf.LoadFromResource("OpenGraal.GraalIM.Resources.rcicon.ico"); this.WidthRequest = 580; this.HeightRequest = 420; this._playerlistTabs = new global::Gtk.Notebook(); this._playerlistTabs.CanFocus = true; this._playerlistTabs.Name = "_playerlistTabs"; this._playerlistTabs.CurrentPage = 0; this._playerlistTabs.EnablePopup = true; this._playerlistTabs.Scrollable = true; this._thisServerLabel = new global::Gtk.Label(); this._thisServerLabel.CanDefault = true; this._thisServerLabel.Name = "StatusTabLabel"; this._thisServerLabel.LabelProp = global::Mono.Unix.Catalog.GetString("This server"); this._playerList = new Gtk.TreeView(); this._playerList.SetSizeRequest(230, 230); this._playerListModel = new Gtk.ListStore(typeof(Gdk.Pixbuf), typeof(string), typeof(int)); //this.tree.Selection.Changed += new System.EventHandler(OnSelectionChanged); //this._playerList.CursorChanged += new System.EventHandler(OnSelectionChanged); /* this._playerList.ButtonPressEvent += new ButtonPressEventHandler(delegate(object o, ButtonPressEventArgs args) { System.Console.WriteLine(args.ToString()); }); */ Gtk.CellRendererPixbuf pixbufrender = new Gtk.CellRendererPixbuf(); Gtk.TreeViewColumn TypeCol = this._playerList.AppendColumn("", new Gtk.CellRendererPixbuf(), "pixbuf", 0); TypeCol.SortIndicator = true; TypeCol.SortColumnId = 0; Gtk.CellRendererPixbuf cellpb = new Gtk.CellRendererPixbuf(); Gtk.CellRendererText cell = new Gtk.CellRendererText(); TypeCol.PackStart(cellpb, false); TypeCol.PackStart(cell, false); Gtk.CellRendererText NickColText = new Gtk.CellRendererText(); Gtk.TreeViewColumn NickCol = new Gtk.TreeViewColumn (); NickCol.PackStart(NickColText,true); NickCol.Title = "Artist"; NickCol.SortIndicator = true; NickCol.SortColumnId = 1; NickCol.AddAttribute(NickColText, "text", 1); this._playerList.AppendColumn(NickCol); Gtk.TreeViewColumn AccCol = this._playerList.AppendColumn("Account", new Gtk.CellRendererText(), "text", 2); AccCol.SortIndicator = true; AccCol.SortColumnId = 2; Gtk.TreeViewColumn LvlCol = this._playerList.AppendColumn("Level", new Gtk.CellRendererText(), "text", 3); LvlCol.SortIndicator = true; LvlCol.SortColumnId = 3; Gtk.TreeViewColumn IdCol = this._playerList.AppendColumn("ID", new Gtk.CellRendererText(), "text", 4); IdCol.SortIndicator = true; IdCol.SortColumnId = 4; Gtk.TreeIter iter = _playerListModel.AppendValues("Admins"); _playerListModel.AppendValues(iter, "Fannypack", "Nu Nu (Yeah Yeah) (double j and haze radio edit)"); iter = _playerListModel.AppendValues("Players"); _playerListModel.AppendValues(iter, "Nelly", "Country Grammer"); this._playerList.FixedHeightMode = false; this._playerList.HeadersClickable = true; this._playerList.SearchColumn = 1; this._playerList.EnableSearch = true; this._playerList.EnableTreeLines = true; this._playerList.ShowExpanders = true; //this.tree.Vadjustment. //_playerListModel.AppendValues("", "Loading...", ""); Gtk.Frame frame2 = new Gtk.Frame(); this._playerList.Model = _playerListModel; this._playerListScroll = new global::Gtk.ScrolledWindow(); this._playerListScroll.Name = "GtkScrolledWindow"; this._playerListScroll.ShadowType = ((global::Gtk.ShadowType)(1)); // Container child GtkScrolledWindow.Gtk.Container+ContainerChild this._playerListScroll.Add(this._playerList); this._playerlistTabs.Add(this._playerListScroll); this._playerlistTabs.SetTabLabel(this._playerListScroll, this._thisServerLabel); this._thisServerLabel.ShowAll(); this.Add(this._playerlistTabs); }
protected void Build() { // Widget OpenGraal.GraalIM.PMWindow this.CanFocus = true; this.Name = "OpenGraal.GraalIM.RCFileBrowser"; this.Title = global::Mono.Unix.Catalog.GetString("File Browser"); this.Icon = global::Gdk.Pixbuf.LoadFromResource("OpenGraal.GraalIM.Resources.rcicon.ico"); this.WindowPosition = ((global::Gtk.WindowPosition)(1)); // Container child OpenGraal.GraalIM.PMWindow.Gtk.Container+ContainerChild this.table1 = new global::Gtk.Table(((uint)(2)), ((uint)(2)), false); this.table1.Name = "table1"; this.table1.WidthRequest = 600; this.table1.HeightRequest = 434; Gtk.Frame frame = new Gtk.Frame(); frame.Label = " Files "; //this.table1.Add(frame); this.table1.Attach(frame, 0, 1, 0, 1, Gtk.AttachOptions.Fill | Gtk.AttachOptions.Expand, Gtk.AttachOptions.Fill | Gtk.AttachOptions.Expand, 5, 4); Gtk.HBox hbox = new Gtk.HBox(true, 5); Gtk.Alignment halign = new Gtk.Alignment(1, 0, 0, 0); hbox.Add(new Gtk.Button("_Close")); halign.Add(hbox); this.table1.Attach(halign, 0, 1, 1, 2, Gtk.AttachOptions.Fill, Gtk.AttachOptions.Fill, 5, 5); // Container child table1.Gtk.Table+TableChild this.GtkScrolledWindow = new global::Gtk.ScrolledWindow(); this.GtkScrolledWindow.Name = "GtkScrolledWindow"; this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1)); // Container child GtkScrolledWindow.Gtk.Container+ContainerChild this.FileBrowserMessage = new global::Gtk.TextView(); this.FileBrowserMessage.Name = "FileBrowserMessage"; this.FileBrowserMessage.Editable = false; this.FileBrowserMessage.AcceptsTab = false; this.FileBrowserMessage.WrapMode = ((global::Gtk.WrapMode)(3)); this.GtkScrolledWindow.Add(this.FileBrowserMessage); //frame.Add(this.GtkScrolledWindow); Gtk.Label currentFolder = new Gtk.Label("Current folder: "); //Gtk.HBox currentFolderHorizontalBox = new Gtk.HBox(); Gtk.Alignment currentFolderAlignment = new Gtk.Alignment(0, 0, 0, 0); currentFolderAlignment.Add(currentFolder); Gtk.Table table2 = new global::Gtk.Table(((uint)(4)), ((uint)(2)), false); table2.Name = "table2"; frame.Add(table2); Gtk.Label spacer = new Gtk.Label(); spacer.SetSizeRequest(10, 1); #region Folder List tree.HeadersVisible = false; Gtk.TreeViewColumn artistColumn = new Gtk.TreeViewColumn(); //artistColumn.Title = "Artist"; artistColumn.Resizable = false; //artistColumn.Clickable = false; //artistColumn.Visible = false; Gtk.CellRendererText artistNameCell = new Gtk.CellRendererText(); artistNameCell.Visible = true; artistColumn.PackStart(artistNameCell, true); tree.AppendColumn("Icon", new Gtk.CellRendererPixbuf(), "pixbuf", 0); tree.AppendColumn(artistColumn); artistColumn.AddAttribute(artistNameCell, "text", 1); //this.musicListStore = new Gtk.TreeStore(typeof(Gdk.Pixbuf), typeof(string)); //this.musicListStore.AppendValues("", "Loading..."); Gtk.TreeIter iter; //iter = musicListStore.AppendValues(global::Gdk.Pixbuf.LoadFromResource("OpenGraal.GraalIM.Resources.rc_images.rcfiles_folderclosed.png"), "levels/"); //musicListStore.AppendValues(iter, global::Gdk.Pixbuf.LoadFromResource("OpenGraal.GraalIM.Resources.rc_images.rcfiles_folderclosed.png"), "staff/"); //musicListStore.RowChanged += RowChanged; tree.RowExpanded += RowExpanded; tree.RowCollapsed += RowCollapsed; tree.CursorChanged += new System.EventHandler(RowSelected); tree.SearchColumn = 1; tree.EnableSearch = true; //tree. tree.Model = musicListStore; #endregion table2.Attach(tree, 0, 1, 2, 3, Gtk.AttachOptions.Fill, Gtk.AttachOptions.Fill, 4, 0); table2.Attach(spacer, 0, 2, 0, 1, Gtk.AttachOptions.Fill, Gtk.AttachOptions.Fill, 0, 0); table2.Attach(currentFolderAlignment, 0, 2, 1, 2, Gtk.AttachOptions.Fill, Gtk.AttachOptions.Fill, 4, 0); table2.Attach(this.GtkScrolledWindow, 0, 2, 3, 4, Gtk.AttachOptions.Fill | Gtk.AttachOptions.Expand, Gtk.AttachOptions.Fill | Gtk.AttachOptions.Expand, 4, 4); this.Add(this.table1); if ((this.Child != null)) { this.Child.ShowAll(); } this.DefaultWidth = 616; this.DefaultHeight = 472; this.DefaultSize = new Gdk.Size(616,472); this.DeleteEvent += new global::Gtk.DeleteEventHandler(this.RemoveRCFileBrowserWindow); this.HideOnDelete(); //this.SendToallMessageButton.Clicked += new global::System.EventHandler(this.SendToallMessageButtonClicked); }
protected override void addHeaderColumn(VirtualGridHeaderColumn headercolumn) { //throw new Exception("is it used ??"); base.addHeaderColumn(headercolumn); Gtk.TreeViewColumn column = new Gtk.TreeViewColumn(); column.Visible = headercolumn.Visible; column.Title = headercolumn.ColumnName; column.Resizable = true; //Gtk.CellRendererText artistNameCell = new Gtk.CellRendererText(); Gtk.CellRenderer renderer; //Gtk.CellRendererCombo artistNameCell = new Gtk.CellRendererCombo(); if (!String.IsNullOrEmpty(headercolumn.Renderer)) { Type tp = Type.GetType(headercolumn.Renderer); renderer = (Gtk.CellRenderer)Sharpend.Utils.Reflection.createInstance(tp); } else { renderer = new Gtk.CellRendererText(); //renderer = treecellrenderer; } column.PackStart(renderer, true); Tree.AppendColumn(column); String attribute = "text"; if (headercolumn.ColumnType.Equals("Gdk.Pixbuf,gdk-sharp", StringComparison.OrdinalIgnoreCase)) { attribute = "pixbuf"; } if (OnTreeCellData != null) { column.SetCellDataFunc(renderer, OnTreeCellData); } column.AddAttribute(renderer, attribute, HeaderColumns.Count - 1); }
public void reloadColumns() { int i=0; columns = new ArrayList(HeaderColumns.Count); List<EditableColumn> editablecolums = new List<EditableColumn>(10); foreach (VirtualGridHeaderColumn c in getHeaderColumns()) { Gtk.TreeViewColumn column = new Gtk.TreeViewColumn(); column.Visible = c.Visible; column.Title = c.ColumnName; column.Resizable = true; Gtk.CellRenderer cell; TreeListCellRendererText treecellrenderer = null; //DL rempixbuf // if (c.CustomOption.Equals("pixbuf", StringComparison.OrdinalIgnoreCase)) // { // cell = new Gtk.CellRendererPixbuf (); // } if (!String.IsNullOrEmpty(c.Renderer)) { Type tp = Type.GetType(c.Renderer); cell = (Gtk.CellRenderer)Sharpend.Utils.Reflection.createInstance(tp); } else { treecellrenderer = new TreeListCellRendererText(c.ColumnName, i); cell = treecellrenderer; } columns.Add(cell); column.PackStart(cell, true); Tree.AppendColumn(column); String attribute = "text"; //DL rempixbuf // if (c.CustomOption.Equals("pixbuf", StringComparison.OrdinalIgnoreCase)) // { // attribute = "pixbuf"; // } if (cell is Gtk.CellRendererPixbuf) { attribute = "pixbuf"; } if (OnTreeCellData != null) { column.SetCellDataFunc(treecellrenderer, OnTreeCellData); } column.AddAttribute(cell, attribute, i); if (cell is Gtk.CellRendererToggle) { (cell as Gtk.CellRendererToggle).Toggled += HandleToggled; (cell as Gtk.CellRendererToggle).Activatable = true; (cell as Gtk.CellRendererToggle).Mode = Gtk.CellRendererMode.Activatable; column.AddAttribute(cell,"active",i); } if ((treecellrenderer != null) && (c.Editable)) { if (String.IsNullOrEmpty(c.EditableColumn)) { treecellrenderer.Editable = true; } else { editablecolums.Add(new EditableColumn{ColumnName=c.EditableColumn, Cellrenderer = treecellrenderer,Column = column}); } treecellrenderer.Edited += new Gtk.EditedHandler(cell_Edited); treecellrenderer.EditingStarted += HandleTreecellrendererEditingStarted; } i++; } foreach(EditableColumn c in editablecolums) { int idx = getColumnIndex(c.ColumnName); c.Column.AddAttribute(c.Cellrenderer,"editable",idx); } }
public SourceView() { this.Build(); _eventModel = new EventModel(EventModel.EventModelType.All); Gtk.TreeViewColumn eventNameCol = new Gtk.TreeViewColumn(); Gtk.CellRenderer rend = new Gtk.CellRendererToggle(); eventNameCol.Title = "Event"; eventNameCol.PackStart(rend, false); eventNameCol.AddAttribute(rend, "active", (int)EventModel.Columns.Included); ((Gtk.CellRendererToggle)rend).Activatable = true; ((Gtk.CellRendererToggle)rend).Toggled += new Gtk.ToggledHandler(OnIncluded_Toggle); rend = new Gtk.CellRendererText(); eventNameCol.PackStart(rend, true); eventNameCol.AddAttribute(rend, "text", (int)EventModel.Columns.Readable); EventTypeTreeView.AppendColumn(eventNameCol); EventTypeTreeView.Model = _eventModel; Gtk.TreeViewColumn buttonCol = new Gtk.TreeViewColumn(); GtkCellRendererButton butRend = new GtkCellRendererButton(); butRend.StockId = "gtk-remove"; buttonCol.PackStart(butRend,true); Gtk.TreeViewColumn noteCountCol = new Gtk.TreeViewColumn(); rend = new Gtk.CellRendererText(); noteCountCol.Title = "No."; noteCountCol.PackStart(rend,true); noteCountCol.SetCellDataFunc(rend, new Gtk.TreeCellDataFunc(ListModelUtil.RenderEventRecordedCount)); EventGroupTreeView.AppendColumn(buttonCol); EventGroupTreeView.AppendColumn(noteCountCol); Gtk.TreeSelection selection = EventGroupTreeView.Selection; selection.Changed += new EventHandler(OnEventGroupSelection_Changed); _eventGroups = new GenericListModel<GedcomRecordedEvent>(); EventGroupTreeView.Model = _eventGroups.Adapter; Gtk.TreeViewColumn callNumberCol = new Gtk.TreeViewColumn(); rend = new Gtk.CellRendererText(); callNumberCol.Title = "Call Number"; callNumberCol.PackStart(rend,true); callNumberCol.AddAttribute(rend, "text", 0); Gtk.TreeViewColumn mediaTypeCol = new Gtk.TreeViewColumn(); rend = new Gtk.CellRendererText(); mediaTypeCol.Title = "Media Type"; mediaTypeCol.PackStart(rend,true); mediaTypeCol.AddAttribute(rend, "text", 1); CallNumberTreeView.AppendColumn(callNumberCol); CallNumberTreeView.AppendColumn(mediaTypeCol); RepositoryCitationListModel repoCitationListModel = new RepositoryCitationListModel(); CallNumberTreeView.Model = repoCitationListModel; selection = CallNumberTreeView.Selection; selection.Changed += new EventHandler(OnCallNumberSelection_Changed); // How to handle SourceMediaType.Other ? // don't include in initial and if the select one is SourceMediaType.Other // add an item into the dropdown for its value? // as other isn't really valid this seems like a reasonable idea Gtk.ListStore mediaTypes = new Gtk.ListStore(typeof(string)); foreach (SourceMediaType mediaType in Enum.GetValues(typeof(SourceMediaType))) { if (mediaType != SourceMediaType.Other) { Gtk.TreeIter iter = mediaTypes.Append(); mediaTypes.SetValue(iter, 0, mediaType.ToString()); } } rend = new Gtk.CellRendererText(); MediaTypeCombo.PackStart(rend,true); MediaTypeCombo.AddAttribute(rend, "text", 0); MediaTypeCombo.Model = mediaTypes; Notebook.Page = 0; }
/// <summary> /// Initializes the node view. /// </summary> private void InitializeNodeView() { Gtk.CellRendererText detailedSettingsTextRenderer = new Gtk.CellRendererText(); detailedSettingsTextRenderer.Mode = Gtk.CellRendererMode.Activatable; Gtk.CellRendererToggle detailedSettingsToggleRenderer = new Gtk.CellRendererToggle(); detailedSettingsToggleRenderer.Activatable = true; detailedSettingsToggleRenderer.Toggled += new Gtk.ToggledHandler(this.OnDetailedSettingsToggled); Gtk.TreeViewColumn detailedSettingsColumn = new Gtk.TreeViewColumn(); detailedSettingsColumn.Clickable = false; detailedSettingsColumn.Reorderable = false; detailedSettingsColumn.Title = GettextCatalog.GetString("Detailed settings"); detailedSettingsColumn.PackStart(detailedSettingsToggleRenderer, false); detailedSettingsColumn.PackStart(detailedSettingsTextRenderer, false); detailedSettingsColumn.AddAttribute(detailedSettingsToggleRenderer, "active", (int)ListStoreColumns.Toggle); detailedSettingsColumn.AddAttribute(detailedSettingsTextRenderer, "markup", (int)ListStoreColumns.Markup); this.detailedSettingsNodeView.AppendColumn(detailedSettingsColumn); this.detailedSettingsStore = new Gtk.ListStore(typeof(bool), typeof(string), typeof(PropertyAddInPair)); this.detailedSettingsNodeView.Model = this.detailedSettingsStore; this.detailedSettingsNodeView.Selection.Changed += new EventHandler(this.OnNodeViewSelectionChanged); }
public EditIconDialog(IProject project, ProjectIconSet iconSet) { Glade.XML xml = new Glade.XML (null, "stetic.glade", "EditIconDialog", null); xml.Autoconnect (this); dialog.Response += OnResponse; this.project = project; this.iconSet = iconSet; nameEntry.Text = iconSet.Name; if (iconSet.Sources.Count == 0) { radioSingle.Active = true; imageLabel.Text = ""; } else if (iconSet.Sources.Count == 1 && iconSet.Sources[0].AllWildcarded) { radioSingle.Active = true; singleIcon = iconSet.Sources[0].Image; if (singleIcon != null) { imageLabel.Text = singleIcon.Label; imageImage.Pixbuf = singleIcon.GetThumbnail (project, 16); } else imageLabel.Text = ""; } else { radioMultiple.Active = true; } hboxSingle.Sensitive = radioSingle.Active; hboxMultiple.Sensitive = !radioSingle.Active; // Build the tree sourceListStore = new Gtk.ListStore (typeof(Gdk.Pixbuf), typeof(string), typeof(string), typeof(string), typeof(string), typeof(object)); sourceList.Model = sourceListStore; Gtk.TreeViewColumn col = new Gtk.TreeViewColumn (); Gtk.CellRendererPixbuf pr = new Gtk.CellRendererPixbuf (); col.Title = Catalog.GetString ("Image"); col.PackStart (pr, false); col.AddAttribute (pr, "pixbuf", 0); Gtk.CellRendererText crt = new Gtk.CellRendererText (); col.PackStart (crt, true); col.AddAttribute (crt, "text", 1); sourceList.AppendColumn (col); col = new Gtk.TreeViewColumn (); col.Expand = true; col.Title = Catalog.GetString ("Size"); CellRendererComboBox crtb = new CellRendererComboBox (); crtb.Changed += new ComboSelectionChangedHandler (OnSizeComboChanged); crtb.Values = sizes; col.PackStart (crtb, true); col.AddAttribute (crtb, "text", 2); sourceList.AppendColumn (col); col = new Gtk.TreeViewColumn (); col.Expand = true; col.Title = Catalog.GetString ("State"); crtb = new CellRendererComboBox (); crtb.Changed += new ComboSelectionChangedHandler (OnStateComboChanged); crtb.Values = states; col.PackStart (crtb, true); col.AddAttribute (crtb, "text", 3); sourceList.AppendColumn (col); col = new Gtk.TreeViewColumn (); col.Expand = true; col.Title = Catalog.GetString ("Direction"); crtb = new CellRendererComboBox (); crtb.Changed += new ComboSelectionChangedHandler (OnDirComboChanged); crtb.Values = directions; col.PackStart (crtb, true); col.AddAttribute (crtb, "text", 4); sourceList.AppendColumn (col); foreach (ProjectIconSource source in iconSet.Sources) AddSource (source); UpdateButtons (); }
public virtual void Initialize(string label, string icon, NodeBuilder[] builders, TreePadOption[] options) { // Create default options this.options = options; globalOptions = new TreeOptions (); foreach (TreePadOption op in options) globalOptions [op.Id] = op.DefaultValue; globalOptions.Pad = this; // Check that there is only one node builder per type Hashtable bc = new Hashtable (); foreach (NodeBuilder nb in builders) { TypeNodeBuilder tnb = nb as TypeNodeBuilder; if (tnb != null) { TypeNodeBuilder other = (TypeNodeBuilder) bc [tnb.NodeDataType]; if (other != null) throw new ApplicationException (string.Format ("The type node builder {0} can't be used in this context because the type {1} is already handled by {2}", nb.GetType(), tnb.NodeDataType, other.GetType())); bc [tnb.NodeDataType] = tnb; } else if (!(nb is NodeBuilderExtension)) throw new InvalidOperationException (string.Format ("Invalid NodeBuilder type: {0}. NodeBuilders must inherit either from TypeNodeBuilder or NodeBuilderExtension", nb.GetType())); } NodeBuilders = builders; Title = label; Icon = icon; builderContext = new TreeBuilderContext (this); tree = new Gtk.TreeView (); /* 0 -- Text 1 -- Icon (Open) 2 -- Icon (Closed) 3 -- Node Data 4 -- Builder chain 5 -- Pango weight 6 -- Expanded */ store = new Gtk.TreeStore (typeof (string), typeof (Gdk.Pixbuf), typeof (Gdk.Pixbuf), typeof (object), typeof (object), typeof(int), typeof(bool)); tree.Model = store; tree.EnableModelDragDest (target_table, Gdk.DragAction.Copy | Gdk.DragAction.Move); Gtk.Drag.SourceSet (tree, Gdk.ModifierType.Button1Mask, target_table, Gdk.DragAction.Copy | Gdk.DragAction.Move); store.DefaultSortFunc = new Gtk.TreeIterCompareFunc (CompareNodes); store.SetSortColumnId (/* GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID */ -1, Gtk.SortType.Ascending); tree.HeadersVisible = false; tree.SearchColumn = 0; tree.EnableSearch = true; complete_column = new Gtk.TreeViewColumn (); complete_column.Title = "column"; Gtk.CellRendererPixbuf pix_render = new Gtk.CellRendererPixbuf (); complete_column.PackStart (pix_render, false); complete_column.AddAttribute (pix_render, "pixbuf", OpenIconColumn); complete_column.AddAttribute (pix_render, "pixbuf-expander-open", OpenIconColumn); complete_column.AddAttribute (pix_render, "pixbuf-expander-closed", ClosedIconColumn); text_render = new Gtk.CellRendererText (); text_render.Edited += new Gtk.EditedHandler (HandleOnEdit); complete_column.PackStart (text_render, true); complete_column.AddAttribute (text_render, "text", TextColumn); complete_column.AddAttribute (text_render, "weight", WeightColumn); tree.AppendColumn (complete_column); Gtk.ScrolledWindow sw = new Gtk.ScrolledWindow (); sw.Add(tree); contentPanel = new Gtk.Frame (); contentPanel.Add(sw); tree.TestExpandRow += new Gtk.TestExpandRowHandler (OnTestExpandRow); tree.RowActivated += new Gtk.RowActivatedHandler(OnNodeActivated); contentPanel.ButtonReleaseEvent += new Gtk.ButtonReleaseEventHandler(OnButtonRelease); contentPanel.PopupMenu += new Gtk.PopupMenuHandler (OnPopupMenu); foreach (NodeBuilder nb in builders) nb.SetContext (builderContext); workNode = new TreeNodeNavigator (this); compareNode1 = new TreeNodeNavigator (this); compareNode2 = new TreeNodeNavigator (this); tree.DragBegin += new Gtk.DragBeginHandler (OnDragBegin); tree.DragDataReceived += new Gtk.DragDataReceivedHandler (OnDragDataReceived); tree.DragDrop += new Gtk.DragDropHandler (OnDragDrop); tree.DragEnd += new Gtk.DragEndHandler (OnDragEnd); tree.DragMotion += new Gtk.DragMotionHandler (OnDragMotion); tree.CursorChanged += new EventHandler (OnSelectionChanged); contentPanel.ShowAll (); }
public BlogPreferences() : base(false, 12) { this.doc = Utils.OpenXmlfile(); Gtk.Label l = new Gtk.Label (Catalog.GetString ( "If your blog supports the Atom Publishing Protocol " + "(APP), you can add it here, and you'll then be able " + "to post notes directly from Tomboy to your blog. " + "You need the URL to either your service document, " + "or your collection document.")); l.Wrap = true; l.Xalign = 0; PackStart (l, false, false, 0); blog_store = CreateBlogStore (); blog_tree = new Gtk.TreeView (blog_store); blog_tree.HeadersVisible = true; blog_tree.Selection.Mode = Gtk.SelectionMode.Single; blog_tree.Selection.Changed += SelectionChanged; Gtk.CellRenderer renderer; Gtk.TreeViewColumn label_col = new Gtk.TreeViewColumn (); label_col.Title = Catalog.GetString ("Label"); label_col.Sizing = Gtk.TreeViewColumnSizing.Autosize; label_col.Resizable = true; label_col.Expand = true; renderer = new Gtk.CellRendererText (); label_col.PackStart (renderer, true); label_col.AddAttribute (renderer, "text", 0 /* label */); label_col.SortColumnId = 1; /* label */ label_col.SortIndicator = false; label_col.Reorderable = false; label_col.SortOrder = Gtk.SortType.Ascending; blog_tree.AppendColumn (label_col); Gtk.TreeViewColumn url_col = new Gtk.TreeViewColumn (); url_col.Title = Catalog.GetString ("Location"); url_col.Sizing = Gtk.TreeViewColumnSizing.Fixed; url_col.Resizable = true; renderer = new Gtk.CellRendererText (); url_col.PackStart (renderer, false); url_col.AddAttribute (renderer, "text", 1 /* url */); blog_tree.AppendColumn (url_col); Gtk.ScrolledWindow sw = new Gtk.ScrolledWindow (); sw.ShadowType = Gtk.ShadowType.In; sw.HeightRequest = 200; sw.WidthRequest = 300; sw.SetPolicy (Gtk.PolicyType.Automatic, Gtk.PolicyType.Automatic); sw.Add (blog_tree); PackStart (sw, true, true, 0); add_button = new Gtk.Button (Gtk.Stock.Add); add_button.Clicked += AddClicked; remove_button = new Gtk.Button (Gtk.Stock.Remove); remove_button.Sensitive = false; remove_button.Clicked += RemoveClicked; edit_button = new Gtk.Button (Gtk.Stock.Edit); edit_button.Sensitive = false; edit_button.Clicked += EditClicked; Gtk.HButtonBox hbutton_box = new Gtk.HButtonBox (); hbutton_box.Layout = Gtk.ButtonBoxStyle.Start; hbutton_box.Spacing = 6; hbutton_box.PackStart (add_button); hbutton_box.PackStart (remove_button); hbutton_box.PackStart (edit_button); PackStart (hbutton_box, false, false, 0); XmlText draft_state; draft_state = (XmlText) this.doc.SelectSingleNode ("preferences/settings/draft/text()"); if (draft_state == null) { XmlNode node = this.doc.DocumentElement; Console.Write ("aa"); if (node.SelectNodes("settings").Count == 0) { XmlElement childelement = this.doc.CreateElement ("settings"); node.AppendChild (childelement); } node = node.SelectSingleNode ("settings"); if (node.SelectNodes("draft").Count == 0) { XmlElement child_element = this.doc.CreateElement ("draft"); node.AppendChild (child_element); } XmlText text = this.doc.CreateTextNode ("yes"); node.SelectSingleNode ("draft").AppendChild (text); draft_state = (XmlText) this.doc.SelectSingleNode ("preferences/settings/draft/text()"); } bool draftbool = (draft_state.Value == "yes" ? true : false); Gtk.CheckButton button = new Gtk.CheckButton ("Create posts as drafts"); button.Active = draftbool; button.Clicked += DraftChanged; PackStart (button, false, false, 0); ShowAll (); }
public void SetupColumns() { //setup columns Gtk.TreeViewColumn FlagCol = new Gtk.TreeViewColumn (); Gtk.CellRendererPixbuf pixbuf = new Gtk.CellRendererPixbuf (); FlagCol.PackStart (pixbuf, false); treeEnableLang.AppendColumn (FlagCol); FlagCol.AddAttribute (pixbuf, "pixbuf", 0); Gtk.TreeViewColumn LanguageCol = new Gtk.TreeViewColumn (); Gtk.CellRendererText text = new Gtk.CellRendererText (); LanguageCol.PackStart (text, true); treeEnableLang.AppendColumn (LanguageCol); LanguageCol.AddAttribute (text, "text", 1); /* Gtk.TreeViewColumn IsEnabled = new Gtk.TreeViewColumn (); Gtk.CellRendererToggle EnabledToggle = new Gtk.CellRendererToggle (); EnabledToggle.Activatable = true; EnabledToggle.Toggled += CheckEnable; IsEnabled.PackStart (EnabledToggle, false); treeEnableLang.AppendColumn (IsEnabled); IsEnabled.AddAttribute (EnabledToggle, "active", 2); //add a dummy column to fill the rest Gtk.TreeViewColumn DummyCol = new Gtk.TreeViewColumn (); Gtk.CellRendererText DummyText = new Gtk.CellRendererText (); DummyCol.PackStart (DummyText, true); treeEnableLang.AppendColumn (DummyCol); DummyCol.AddAttribute (DummyText, "text", 3); */ }
public BugzillaPreferences () : base (false, 12) { last_opened_dir = Environment.GetEnvironmentVariable ("HOME"); Gtk.Label l = new Gtk.Label (Catalog.GetString ( "You can use any bugzilla just by dragging links " + "into notes. If you want a special icon for " + "certain hosts, add them here.")); l.Wrap = true; l.Xalign = 0; PackStart (l, false, false, 0); icon_store = CreateIconStore (); icon_tree = new Gtk.TreeView (icon_store); icon_tree.HeadersVisible = true; icon_tree.Selection.Mode = Gtk.SelectionMode.Single; icon_tree.Selection.Changed += SelectionChanged; Gtk.CellRenderer renderer; Gtk.TreeViewColumn host_col = new Gtk.TreeViewColumn (); host_col.Title = Catalog.GetString ("Host Name"); host_col.Sizing = Gtk.TreeViewColumnSizing.Autosize; host_col.Resizable = true; host_col.Expand = true; host_col.MinWidth = 200; renderer = new Gtk.CellRendererText (); host_col.PackStart (renderer, true); host_col.AddAttribute (renderer, "text", 1 /* host name */); host_col.SortColumnId = 1; /* host name */ host_col.SortIndicator = false; host_col.Reorderable = false; host_col.SortOrder = Gtk.SortType.Ascending; icon_tree.AppendColumn (host_col); Gtk.TreeViewColumn icon_col = new Gtk.TreeViewColumn (); icon_col.Title = Catalog.GetString ("Icon"); icon_col.Sizing = Gtk.TreeViewColumnSizing.Fixed; icon_col.MaxWidth = 50; icon_col.MinWidth = 50; icon_col.Resizable = false; renderer = new Gtk.CellRendererPixbuf (); icon_col.PackStart (renderer, false); icon_col.AddAttribute (renderer, "pixbuf", 0 /* icon */); icon_tree.AppendColumn (icon_col); Gtk.ScrolledWindow sw = new Gtk.ScrolledWindow (); sw.ShadowType = Gtk.ShadowType.In; sw.HeightRequest = 200; sw.WidthRequest = 300; sw.SetPolicy (Gtk.PolicyType.Automatic, Gtk.PolicyType.Automatic); sw.Add (icon_tree); PackStart (sw, true, true, 0); add_button = new Gtk.Button (Gtk.Stock.Add); add_button.Clicked += AddClicked; remove_button = new Gtk.Button (Gtk.Stock.Remove); remove_button.Sensitive = false; remove_button.Clicked += RemoveClicked; Gtk.HButtonBox hbutton_box = new Gtk.HButtonBox (); hbutton_box.Layout = Gtk.ButtonBoxStyle.Start; hbutton_box.Spacing = 6; hbutton_box.PackStart (add_button); hbutton_box.PackStart (remove_button); PackStart (hbutton_box, false, false, 0); ShowAll (); }
public static void Load() { Style.Add <FormHandler>("MainWindow", h => { if (!Global.UseHeaderBar) { return; } h.Menu = null; h.ToolBar = null; var builder = new Gtk.Builder(null, "MainWindow.glade", null); var headerBar = new Gtk.Widget(builder.GetObject("headerbar").Handle); var separator = new Gtk.Widget(builder.GetObject("separator1").Handle); popovermenu1 = new Gtk.Widget(builder.GetObject("popovermenu1").Handle); popovermenu2 = new Gtk.Widget(builder.GetObject("popovermenu2").Handle); Gtk3Wrapper.gtk_window_set_titlebar(h.Control.Handle, headerBar.Handle); Gtk3Wrapper.gtk_header_bar_set_show_close_button(headerBar.Handle, true); Connect(builder.GetObject("new_button").Handle, MainWindow.Instance.cmdNew); Connect(builder.GetObject("save_button").Handle, MainWindow.Instance.cmdSave); Connect(builder.GetObject("build_button").Handle, MainWindow.Instance.cmdBuild, false); Connect(builder.GetObject("rebuild_button").Handle, MainWindow.Instance.cmdRebuild, false); Connect(builder.GetObject("cancel_button").Handle, MainWindow.Instance.cmdCancelBuild, false); Connect(builder.GetObject("open_other_button").Handle, MainWindow.Instance.cmdOpen); Connect(builder.GetObject("import_button").Handle, MainWindow.Instance.cmdImport); Connect(builder.GetObject("saveas_button").Handle, MainWindow.Instance.cmdSaveAs); Connect(builder.GetObject("undo_button").Handle, MainWindow.Instance.cmdUndo); Connect(builder.GetObject("redo_button").Handle, MainWindow.Instance.cmdRedo); Connect(builder.GetObject("close_button").Handle, MainWindow.Instance.cmdClose); Connect(builder.GetObject("clean_button").Handle, MainWindow.Instance.cmdClean); Connect(builder.GetObject("help_button").Handle, MainWindow.Instance.cmdHelp); Connect(builder.GetObject("about_button").Handle, MainWindow.Instance.cmdAbout); Connect(builder.GetObject("exit_button").Handle, MainWindow.Instance.cmdExit); Connect(builder.GetObject("debugmode_button").Handle, MainWindow.Instance.cmdDebugMode); MainWindow.Instance.cmdBuild.EnabledChanged += (sender, e) => separator.Visible = MainWindow.Instance.cmdBuild.Enabled || MainWindow.Instance.cmdCancelBuild.Enabled; MainWindow.Instance.cmdCancelBuild.EnabledChanged += (sender, e) => separator.Visible = MainWindow.Instance.cmdBuild.Enabled || MainWindow.Instance.cmdCancelBuild.Enabled; MainWindow.Instance.TitleChanged += delegate { var title = MainWindow.TitleBase; var subtitle = ""; if (PipelineController.Instance.ProjectOpen) { title = (PipelineController.Instance.ProjectDirty) ? "*" : ""; title += Path.GetFileName(PipelineController.Instance.ProjectItem.OriginalPath); subtitle = Path.GetDirectoryName(PipelineController.Instance.ProjectItem.OriginalPath); } h.Control.Title = title; Gtk3Wrapper.gtk_header_bar_set_subtitle(headerBar.Handle, subtitle); }; var treeview1 = new Gtk.TreeView(builder.GetObject("treeview1").Handle); var store = new Gtk.TreeStore(typeof(string), typeof(string)); var column = new Gtk.TreeViewColumn(); var textCell = new Gtk.CellRendererText(); var dataCell = new Gtk.CellRendererText(); dataCell.Visible = false; column.PackStart(textCell, false); column.PackStart(dataCell, false); treeview1.AppendColumn(column); column.AddAttribute(textCell, "markup", 0); column.AddAttribute(dataCell, "text", 1); treeview1.Model = store; MainWindow.Instance.RecentChanged += (sender, e) => { store.Clear(); var recentList = sender as List <string>; foreach (var project in recentList) { store.InsertWithValues(0, "<b>" + Path.GetFileName(project) + "</b>\n" + Path.GetDirectoryName(project), project); } }; treeview1.RowActivated += (o, args) => { popovermenu2.Hide(); Gtk.TreeIter iter; if (!store.GetIter(out iter, args.Path)) { return; } var project = store.GetValue(iter, 1).ToString(); PipelineController.Instance.OpenProject(project); }; h.Control.ShowAll(); }); Style.Add <DialogHandler>("HeaderBar", h => { var title = h.Title; var headerBar = Gtk3Wrapper.gtk_header_bar_new(); Gtk3Wrapper.gtk_window_set_titlebar(h.Control.Handle, headerBar); h.Title = title; if (h.AbortButton.Text == "Close") { Gtk3Wrapper.gtk_header_bar_set_show_close_button(headerBar, true); return; } var defButton = (Gtk.Button)h.DefaultButton.ControlObject; defButton.StyleContext.AddClass("suggested-action"); Gtk3Wrapper.gtk_header_bar_pack_end(headerBar, defButton.Handle); Gtk3Wrapper.gtk_header_bar_pack_start(headerBar, ((Gtk.Button)h.AbortButton.ControlObject).Handle); }); Style.Add <LabelHandler>("Wrap", h => h.Control.MaxWidthChars = 55); Style.Add <ToolBarHandler>("ToolBar", h => { h.Control.ToolbarStyle = Gtk.ToolbarStyle.Icons; h.Control.IconSize = Gtk.IconSize.SmallToolbar; }); Style.Add <TreeViewHandler>("Scroll", h => { var treeView = h.Control.Child as Gtk.TreeView; Gtk.TreeIter lastIter, iter; if (treeView.Model.GetIterFirst(out iter)) { do { lastIter = iter; }while (treeView.Model.IterNext(ref iter)); var path = treeView.Model.GetPath(lastIter); treeView.ScrollToCell(path, null, false, 0, 0); } }); Style.Add <DrawableHandler>("Stretch", h => { var parent = h.Control.Parent.Parent.Parent.Parent.Parent.Parent; parent.SizeAllocated += delegate { var al = h.Control.Allocation; al.Width = parent.AllocatedWidth - 2; h.Control.SetAllocation(al); }; }); Style.Add <PixelLayoutHandler>("Stretch", h => { var parent = h.Control.Parent.Parent.Parent.Parent.Parent; parent.SizeAllocated += delegate { var al = h.Control.Allocation; al.Width = parent.AllocatedWidth; h.Control.SetAllocation(al); }; }); Style.Add <TextBoxHandler>("OverrideSize", h => { h.Control.WidthChars = 0; }); Style.Add <ScrollableHandler>("BuildOutput", h => { var child = ((((h.Control.Child as Gtk.Viewport).Child as Gtk.VBox).Children[0] as Gtk.HBox).Children[0] as Gtk.Alignment).Child; var ok = false; h.Control.SizeAllocated += delegate { // Set Width of the Drawable var al = child.Allocation; al.Width = h.Control.AllocatedWidth - 2; if (BuildOutput.ReqWidth > al.Width) { al.Width = BuildOutput.ReqWidth; } child.SetAllocation(al); if (PipelineSettings.Default.AutoScrollBuildOutput) { // Scroll to bottom if (BuildOutput.Count == -1) { ok = false; } if (!ok) { var adj = h.Control.Vadjustment; adj.Value = adj.Upper - adj.PageSize; if (adj.Upper >= BuildOutput.Count && BuildOutput.Count != -1) { ok = true; } } } }; }); }
/// <summary> /// Initializes and fills the tree view. /// </summary> private void InitializeAndFillTreeView() { Gtk.CellRendererPixbuf rulePixBufRenderer = new Gtk.CellRendererPixbuf(); rulePixBufRenderer.Mode = Gtk.CellRendererMode.Activatable; Gtk.CellRendererText ruleTextRenderer = new Gtk.CellRendererText(); ruleTextRenderer.Mode = Gtk.CellRendererMode.Activatable; Gtk.CellRendererToggle ruleToggleRenderer = new Gtk.CellRendererToggle(); ruleToggleRenderer.Activatable = true; ruleToggleRenderer.Toggled += new Gtk.ToggledHandler(this.OnRuleToggled); Gtk.TreeViewColumn rulesColumn = new Gtk.TreeViewColumn(); rulesColumn.Clickable = false; rulesColumn.Reorderable = false; rulesColumn.Title = GettextCatalog.GetString("Enabled rules"); rulesColumn.PackStart(ruleToggleRenderer, false); rulesColumn.PackStart(rulePixBufRenderer, false); rulesColumn.PackStart(ruleTextRenderer, false); rulesColumn.AddAttribute(ruleToggleRenderer, "active", (int)TreeStoreColumns.Toggle); rulesColumn.AddAttribute(rulePixBufRenderer, "pixbuf", (int)TreeStoreColumns.PixBuf); rulesColumn.SetCellDataFunc(ruleTextRenderer, new Gtk.TreeCellDataFunc(this.RenderRule)); this.rulesTreeView.AppendColumn(rulesColumn); this.rulesStore = new Gtk.TreeStore(typeof(bool), typeof(Gdk.Pixbuf), typeof(object), typeof(SourceAnalyzer), typeof(bool)); this.rulesTreeView.Model = this.rulesStore; this.rulesTreeView.Selection.Changed += new EventHandler(this.OnTreeViewSelectionChanged); if (this.rulesStore != null) { // Add each of the parsers and analyzers to the tree. foreach (SourceParser parser in this.SettingsHandler.Core.Parsers) { Gtk.TreeIter parserIter = this.rulesStore.AppendValues(false, null, parser, null, false); // Add each of the boolean properties exposed by the parser. this.StoreAddinProperties(parser); // Iterate through each of the analyzers and add a checkbox for each. foreach (SourceAnalyzer analyzer in parser.Analyzers) { Gtk.TreeIter analyzerIter = this.rulesStore.AppendValues(parserIter, false, null, analyzer, null, false); // Add each of the boolean properties exposed by the analyzer. this.StoreAddinProperties(analyzer); this.FillAnalyzerRules(analyzer, analyzerIter); if ((bool)this.rulesStore.GetValue(analyzerIter, (int)TreeStoreColumns.Overridden)) { this.rulesStore.SetValue(parserIter, (int)TreeStoreColumns.Overridden, true); } } this.rulesTreeView.ExpandRow(this.rulesStore.GetPath(parserIter), false); } } }
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 EditPackagesDialog(CProject project) { this.Build(); this.project = project; selectedPackages.AddRange (project.Packages); Gtk.CellRendererText textRenderer = new Gtk.CellRendererText (); Gtk.CellRendererPixbuf pixbufRenderer = new Gtk.CellRendererPixbuf (); pixbufRenderer.StockId = "md-package"; // <!-- 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", 1); normalPackageTreeView.Model = normalPackageListStore; normalPackageTreeView.HeadersVisible = true; normalPackageTreeView.AppendColumn ("", normalPackageToggleRenderer, "active", 0); normalPackageTreeView.AppendColumn (normalPackageColumn); normalPackageTreeView.AppendColumn ("Version", textRenderer, "text", 2); // <!-- 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", 1); projectPackageTreeView.Model = projectPackageListStore; projectPackageTreeView.HeadersVisible = true; projectPackageTreeView.AppendColumn ("", projectPackageToggleRenderer, "active", 0); projectPackageTreeView.AppendColumn (projectPackageColumn); projectPackageTreeView.AppendColumn ("Version", textRenderer, "text", 2); // <!-- Selected packages --> Gtk.TreeViewColumn selectedPackageColumn = new Gtk.TreeViewColumn (); selectedPackageColumn.Title = "Package"; selectedPackageColumn.PackStart (pixbufRenderer, false); selectedPackageColumn.PackStart (textRenderer, true); selectedPackageColumn.AddAttribute (textRenderer, "text", 0); selectedPackagesTreeView.Model = selectedPackagesListStore; selectedPackagesTreeView.HeadersVisible = true; selectedPackagesTreeView.AppendColumn (selectedPackageColumn); selectedPackagesTreeView.AppendColumn ("Version", textRenderer, "text", 1); // Fill up the project tree view projectPackages = ProjectPackages (project); foreach (ProjectPackage p in projectPackages) { if (p.Name == project.Name) continue; string version = GetPackageVersion (p.File); bool inProject = IsInProject (p.File); projectPackageListStore.AppendValues (inProject, p.Name, version); if (inProject) selectedPackagesListStore.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; } string name = f.Name.Substring (0, f.Name.LastIndexOf ('.')); string version = GetPackageVersion (f.FullName); bool inProject = IsInProject (name); normalPackageListStore.AppendValues (inProject, name, version); if (inProject) selectedPackagesListStore.AppendValues (name, version); } } } }
public CodeFormattingPanelWidget (CodeFormattingPanel panel, OptionsDialog dialog) { this.Build(); this.panel = panel; this.dialog = dialog; store = new Gtk.ListStore (typeof(MimeTypePanelData), typeof(Gdk.Pixbuf), typeof(string)); tree.Model = store; boxButtons.Visible = panel.DataObject is PolicySet; Gtk.CellRendererText crt = new Gtk.CellRendererText (); Gtk.CellRendererPixbuf crp = new Gtk.CellRendererPixbuf (); Gtk.TreeViewColumn col = new Gtk.TreeViewColumn (); col.Title = GettextCatalog.GetString ("File Type"); col.PackStart (crp, false); col.PackStart (crt, true); col.AddAttribute (crp, "pixbuf", 1); col.AddAttribute (crt, "text", 2); tree.AppendColumn (col); store.SetSortColumnId (2, Gtk.SortType.Ascending); CellRendererComboBox comboCell = new CellRendererComboBox (); comboCell.Changed += OnPolicySelectionChanged; Gtk.TreeViewColumn polCol = tree.AppendColumn (GettextCatalog.GetString ("Policy"), comboCell, new Gtk.TreeCellDataFunc (OnSetPolicyData)); tree.Selection.Changed += delegate { Gtk.TreeIter it; tree.Selection.GetSelected (out it); Gtk.TreeViewColumn ccol; Gtk.TreePath path; tree.GetCursor (out path, out ccol); if (ccol == polCol) tree.SetCursor (path, ccol, true); }; Fill (); UpdateButtons (); tree.Selection.Changed += delegate { UpdateButtons (); }; }