private void fillComboBox() { CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer, false); //expand=false comboBox.AddAttribute (cellRenderer, "text", 1); ListStore listStore = new ListStore(typeof(string), typeof(string)); comboBox.Model = listStore; string connectionString = "Server=localhost;Database=PruebaBD;User Id=ximo;Password=admin"; IDbConnection dbConnection = new NpgsqlConnection(connectionString); dbConnection.Open (); IDbCommand dbCommand = dbConnection.CreateCommand(); dbCommand.CommandText = "select id, nombre from categoria"; IDataReader dataReader = dbCommand.ExecuteReader(); while (dataReader.Read ()) listStore.AppendValues (dataReader["id"].ToString (), dataReader["nombre"].ToString () ); dataReader.Close (); dbConnection.Close (); }
private void fillComboBox() { CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer, false); //expand:false comboBox.AddAttribute(cellRenderer, "text", 0); CellRenderer cellRenderer2 = new CellRendererText(); comboBox.PackStart(cellRenderer2, false); //expand:false comboBox.AddAttribute(cellRenderer2, "text", 1); ListStore listStore = new ListStore(typeof(string),typeof(string)); string connectionString = "Server=localhost;Database=dbprueba2;User Id=dbprueba; Password=sistemas;"; IDbConnection dbConnection = new NpgsqlConnection(connectionString); dbConnection.Open(); IDbCommand dbCommand = dbConnection.CreateCommand(); dbCommand.CommandText = "SELECT id, nombre FROM categoria"; IDataReader dataReader = dbCommand.ExecuteReader(); while(dataReader.Read()) { listStore.AppendValues(dataReader["id"].ToString(),dataReader["nombre"].ToString()); } comboBox.Model = listStore; dataReader.Close(); dbConnection.Close(); }
private void AddStoragePoolInTreeView(string storagePoolName) { StoragePoolListStore.AppendValues(storagePoolName); CellRendererText crtStoragePoolCell = new CellRendererText(); tvcStoragePools.PackStart(crtStoragePoolCell, true); tvcStoragePools.AddAttribute(crtStoragePoolCell, "text", 0); }
public LayerListWidget(Application application) { this.application = application; RowSeparatorFunc = OurRowSeparatorFunc; ButtonPressEvent += OnButtonPressed; VisibilityRenderer visibilityRenderer = new VisibilityRenderer(); visibilityRenderer.VisibilityChanged += OnVisibilityChange; TreeViewColumn visibilityColumn = new TreeViewColumn("Visibility", visibilityRenderer); visibilityColumn.SetCellDataFunc(visibilityRenderer, (TreeCellDataFunc)VisibilityDataFunc); AppendColumn(visibilityColumn); CellRendererText TextRenderer = new CellRendererText(); TreeViewColumn TypeColumn = new TreeViewColumn(); TypeColumn.PackStart(TextRenderer, true); TypeColumn.SetCellDataFunc(TextRenderer, (TreeCellDataFunc)TextDataFunc); TypeColumn.Title = "Type"; AppendColumn(TypeColumn); HeadersVisible = false; application.SectorChanged += OnSectorChanged; application.TilemapChanged += OnTilemapChanged; application.LevelChanged += OnLevelChanged; FieldOrProperty.AnyFieldChanged += OnFieldModified; }
public ImageInfo () : base (null, null) { store = new TreeStore ((int)TypeFundamentals.TypeString, (int)TypeFundamentals.TypeString); tv = new TreeView (store); tv.HeadersVisible = true; TreeViewColumn NameCol = new TreeViewColumn (); CellRenderer NameRenderer = new CellRendererText (); NameCol.Title = "Name"; NameCol.PackStart (NameRenderer, true); NameCol.AddAttribute (NameRenderer, "markup", 0); tv.AppendColumn (NameCol); TreeViewColumn ValueCol = new TreeViewColumn (); CellRenderer ValueRenderer = new CellRendererText (); ValueCol.Title = "Value"; ValueCol.PackStart (ValueRenderer, false); ValueCol.AddAttribute (ValueRenderer, "text", 1); tv.AppendColumn (ValueCol); // // Populate tree // TreeIter iter = new TreeIter (); PopulateGeneral (out iter); PopulateDetails (out iter); Add (tv); }
//Modelo de funcionamiento //1º Referencias (System data y Npgsql) //2º Diseñador //3º picar codigo private void fillComboBox() { CellRendererText cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer,false); //expand = false comboBox.AddAttribute(cellRenderer,"text", 1); ListStore liststore = new ListStore(typeof(string), typeof(string)); comboBox.Model=liststore; //Atacamos a la base de datos para conectarnos string connectionString="Server=localhost; Database=dbprueba; User Id=dbprueba; password=1234"; IDbConnection dbConnection = new NpgsqlConnection(connectionString); dbConnection.Open(); IDbCommand dbCommand = dbConnection.CreateCommand(); dbCommand.CommandText="select id, nombre from categoria"; IDataReader dataReader = dbCommand.ExecuteReader(); while(dataReader.Read()){ liststore.AppendValues(dataReader("id").ToString(), dataReader("nombre").ToString()); } dataReader.Close (); dbConnection.Close(); }
private void SetupTreeView() { { var column = new TreeViewColumn(); var cell = new CellRendererText(); column.Title = "Customer ID"; column.PackStart(cell, true); column.AddAttribute(cell, "text", (int)Column.CustomerID); this.treeview1.AppendColumn(column); } { var column = new TreeViewColumn(); var cell = new CellRendererText(); column.Title = "First Name"; column.PackStart(cell, true); column.AddAttribute(cell, "text", (int)Column.FirstName); this.treeview1.AppendColumn(column); } { var column = new TreeViewColumn(); var cell = new CellRendererText(); column.Title = "Last Name"; column.PackStart(cell, true); column.AddAttribute(cell, "text", (int)Column.LastName); this.treeview1.AppendColumn(column); } this.treeStore1 = (TreeStore)this.SetupTreeViewModel(); this.treeview1.Model = this.treeStore1; this.treeview1.ExpandAll(); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); //comboBox.Active = 0; -> Para establecer como predeterminado un item del combo CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer, false); //expand = false comboBox.AddAttribute(cellRenderer, "text", 0); CellRenderer cellRenderer2 = new CellRendererText(); comboBox.PackStart(cellRenderer2, false); //expand = false comboBox.AddAttribute(cellRenderer2, "text", 1); listStore = new ListStore(typeof(string), typeof(string)); comboBox.Model = listStore; listStore.AppendValues("1", "uno"); listStore.AppendValues("2", "dos"); comboBox.Changed += comboBoxChanged; comboBox.Changed += delegate {showItemSelected(listStore);}; comboBox.Changed += delegate { Console.WriteLine("Evento activado"); TreeIter treeIter; if (comboBox.GetActiveIter(out treeIter) ){ // item seleccionado. object value =listStore.GetValue(treeIter, 0); Console.WriteLine("ComboBox.changed id={0}", value); } }; }
private void SetupTreeView() { { var cell = new CellRendererText(); var column = new TreeViewColumn("Customer ID", cell, "text", (int)Column.CustomerID); column.SortColumnId = (int)Column.CustomerID; this.treeview1.AppendColumn(column); } { var cell = new CellRendererText(); var column = new TreeViewColumn("First Name", cell, "text", (int)Column.FirstName); column.SortColumnId = (int)Column.FirstName; this.treeview1.AppendColumn(column); } { var cell = new CellRendererText(); var column = new TreeViewColumn("Last Name", cell, "text", (int)Column.LastName); column.SortColumnId = (int)Column.LastName; this.treeview1.AppendColumn(column); } this.store = this.SetupTreeViewModel(); this.treeview1.Model = this.store; this.treeview1.RulesHint = true; }
private void SetupTree() { tree = new TreeView (); this.store = new ListStore (typeof (object)); tree.Model = store; TreeViewColumn col = new TreeViewColumn (); col.Sizing = TreeViewColumnSizing.Fixed; col.Spacing = 4; CellRendererText text_renderer = new CellRendererText (); text_renderer.WrapMode = Pango.WrapMode.Word; col.PackStart (text_renderer, true); col.SetCellDataFunc (text_renderer, new TreeCellDataFunc (PluginInfoCellDataFunc)); CellRendererToggle loaded_renderer = new CellRendererToggle (); loaded_renderer.Activatable = false; col.PackStart (loaded_renderer, false); col.SetCellDataFunc (loaded_renderer, new TreeCellDataFunc (LoadedStatusCellDataFunc)); col.Title = Catalog.GetString("Plugins Details"); tree.AppendColumn (col); }
void AddColumn (string title, int counter, ref TreeView table) { TreeViewColumn column = new TreeViewColumn { Title = title }; CellRenderer renderer = new CellRendererText (); column.PackStart (renderer, true); table.AppendColumn (column); column.AddAttribute (renderer, "text", counter); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); // MyFunction f; // // MyFunction[] functions = new MyFunction[]{suma, resta, multiplica}; // // int random = new Random().Next(3); // f= functions[random]; // // Console.WriteLine("f={0}", f(5,3)); treeView.Selection.Mode=SelectionMode.Multiple; treeView.AppendColumn("Columna uno", new CellRendererText(), "text",0); treeView.AppendColumn("Columna dos", new CellRendererText(), "text",1); CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer, false); //expand = false comboBox.AddAttribute (cellRenderer, "text", 0); CellRenderer cellRenderer2 = new CellRendererText(); comboBox.PackStart(cellRenderer2, false); //expand = false comboBox.AddAttribute (cellRenderer2, "text", 1); listStore = new ListStore (typeof(string), typeof(string)); comboBox.Model = listStore; treeView.Model = listStore; listStore.AppendValues("1", "Uno"); listStore.AppendValues("2", "Dos"); treeView.Selection.Changed+=delegate{ int count = treeView.Selection.CountSelectedRows(); Console.WriteLine("treeView.Selection.Changed CountSelectedRows={0}" + count); treeView.Selection.SelectedForeach(delegate(TreeModel model, TreePath path, TreeIter iter){ object value = listStore.GetValue(iter, 0); Console.WriteLine("value={0}", value); }); }; // comboBox.Changed += delegate { // TreeIter treeIter; // if(comboBox.GetActiveIter(out treeIter)){ //Item seleccionado // object value = listStore.GetValue (treeIter, 0); // Console.WriteLine("comboBoxChanged value={0}", value); // } // }; comboBox.Changed += comboBoxChanged; //comboBox.Changed += delegate {showActiveItem (listStore); }; }
public TilegroupSelector(Application application, TileListWidget tileList) { this.tileList = tileList; application.LevelChanged += OnLevelChanged; CellRendererText renderer = new CellRendererText(); PackStart(renderer, false); SetCellDataFunc(renderer, TextDataFunc); Changed += OnTileGroupChosen; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); QuerryResult result = PersisterHelper.Get ("select * from articulo"); Console.WriteLine ("MainWindow ctor."); IDbConnection connection = App.Instance.DBConnection; IDbCommand command = connection.CreateCommand (); command.CommandText = "select * from articulo"; IDataReader reader = command.ExecuteReader (); string[] nombres = GetColumnas (reader); CellRendererText cellText = new CellRendererText (); for (int i =0; i < nombres.Length; i++) { int columna = i; treeview.AppendColumn (nombres[i], cellText, delegate(TreeViewColumn tree_colum, CellRenderer cell, TreeModel tree_model, TreeIter iter){ IList row =(IList)tree_model.GetValue(iter,0); cellText.Text = row[columna].ToString(); }); } ListStore list = new ListStore (typeof(IList)); while (reader.Read()) { IList values = getValues (reader); list.AppendValues (values); } /* Type[] types = new Type[reader.FieldCount]; for (int i =0; i< reader.FieldCount; i++) { treeview.AppendColumn (reader.GetName (i), new CellRendererText (), "text", i); types [i] = typeof(String); } ListStore list = new ListStore (types); string[] listaNombres = new string[reader.FieldCount] ; while (reader.Read()){ for (int i =0; i< reader.FieldCount; i++) { listaNombres[i]=reader [reader.GetName(i)].ToString() ; }; list.AppendValues(listaNombres); } treeview.Model = list; */ connection.Close (); }
private TreeView CreateThemeTreeView() { PopulateStore (); TreeView tv = new TreeView (themeStore); tv.HeadersVisible = false; CellRendererText ct = new CellRendererText (); tv.AppendColumn (Mono.Posix.Catalog.GetString ("Theme"), ct, new TreeCellDataFunc (CellDataFunc)); tv.Visible = true; return tv; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); tvcDomains.Title = "Domains"; treeview1.AppendColumn(tvcDomains); treeview1.Model = domainListStore; CellRendererText crtDomainCell = new CellRendererText(); tvcDomains.PackStart(crtDomainCell, true); tvcDomains.AddAttribute(crtDomainCell, "text", 0); }
private void FillTestComboBox(Gtk.ComboBox cb) { cb.Clear(); CellRendererText cell = new CellRendererText(); cb.PackStart(cell, false); cb.AddAttribute(cell, "text", 0); ListStore store = new ListStore(typeof (string)); cb.Model = store; store.AppendValues("BitBlt"); store.AppendValues("Ellipse"); store.AppendValues("Polygon"); store.AppendValues("LineTo"); store.AppendValues("PolylineTo"); }
public void ConfigureMap() { entryreferencePlan.ItemsQuery = QueryOver.Of<Plan> (); planviewwidget1.Mode=LeaseAgreement.PlanViewMode.View; planviewwidget1.PolygonRightClicked += OnPolygonRightClicked; var cell = new CellRendererText (); var nameColumn = new TreeViewColumn (); nameColumn.Title = "Название места"; nameColumn.PackStart (cell, true); nameColumn.SetCellDataFunc(cell, new TreeCellDataFunc(delegate(TreeViewColumn tree_column, CellRenderer cr, TreeModel tree_model, TreeIter iter) { Place place =tree_model.GetValue(iter,0) as Place; (cr as CellRendererText).Text=place.PlaceType.Name+"-"+place.PlaceNumber; })); reserveTreeView.AppendColumn (nameColumn); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); MyFunction f; MyFunction[] functions = new MyFunction[]{suma, resta, multiplica}; int random = new Random().Next(3); f = functions[random]; // if (new Random().Next(2) ==0){ // f=suma; // } // else{ // f=resta; // } Console.WriteLine("f={0}", f(5,3)); //comboBox CellRenderer cellRenderer = new CellRendererText(); combobox.PackStart(cellRenderer, false); combobox.AddAttribute (cellRenderer, "text", 1); listStore = new ListStore(typeof(string), typeof(string)); combobox.Model = listStore; listStore.AppendValues("1", "Uno"); listStore.AppendValues("2", "Dos"); listStore.AppendValues("3", "Tres"); listStore.AppendValues("4", "Cuatro"); listStore.AppendValues("5", "Cinco"); combobox.Changed += delegate { TreeIter treeIter; if (combobox.GetActiveIter (out treeIter)) { //item seleccionado object value = listStore.GetValue(treeIter, 0); Console.WriteLine ("ComboBox.Changed delegate id={0}", value); } }; combobox.Changed += comboBoxChanged; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer, false); comboBox.AddAttribute (cellRenderer, "text", 1); ListStore listStore = new ListStore(typeof(string), typeof(string)); comboBox.Model = listStore; listStore.AppendValues("1", "Uno"); listStore.AppendValues("2", "Dos"); comboBox.Changed += delegate { showActiveItem (listStore); }; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); Console.WriteLine ("MainWindow ctor."); QueryResult queryResult = PersisterHelper.Get ("select * from articulo"); //TODO usar el queryResult IDbConnection dbConnection = App.Instance.DbConnection; IDbCommand dbCommand = dbConnection.CreateCommand (); dbCommand.CommandText = "select * from articulo"; IDataReader dataReader = dbCommand.ExecuteReader (); // treeView.AppendColumn ("id", new CellRendererText (), "text", 0); // treeView.AppendColumn ("nombre", new CellRendererText (), "text", 1); string[] columnNames = getColumnNames (dataReader); CellRendererText cellRendererText = new CellRendererText (); for (int index = 0; index < columnNames.Length; index++) { //treeView.AppendColumn (columnNames [index], cellRendererText, "text", index); int column = index; treeView.AppendColumn (columnNames [index], cellRendererText, delegate(TreeViewColumn tree_column, CellRenderer cell, TreeModel tree_model, TreeIter iter) { IList row = (IList)tree_model.GetValue(iter, 0); cellRendererText.Text = row[column].ToString(); }); } //ListStore listStore = new ListStore (typeof(String), typeof(String)); //Type[] types = getTypes (dataReader.FieldCount); ListStore listStore = new ListStore (typeof(IList)); while (dataReader.Read()) { //listStore.AppendValues (dataReader [0].ToString(), dataReader [1].ToString()); IList values = getValues (dataReader); listStore.AppendValues (values); } dataReader.Close (); treeView.Model = listStore; dbConnection.Close (); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); //Notes TreeViewColumn notesCol = new TreeViewColumn(); notesCol.Title = "Notes"; treeviewNotes.AppendColumn(notesCol); // ListStore nStore = new ListStore(typeof (string)); // treeviewNotes.Model = nStore; // nStore.AppendValues("HAHAHA"); CellRendererText noteTitleCell = new CellRendererText(); notesCol.PackStart(noteTitleCell, true); notesCol.AddAttribute(noteTitleCell, "text", 0); /* TreeSelection ts = treeviewNotes.Selection; ts.Mode = SelectionMode.Multiple; treeviewNotes.RubberBanding = true; */ //TODO if multiple selected disable NoteEditor notes = new NotesModel(); treeviewNotes.Model = notes.NotesStore; //Tags TreeViewColumn tagsCol = new TreeViewColumn(); tagsCol.Title = "Tags"; TreeViewColumn tagsCountCol = new TreeViewColumn(); tagsCountCol.SortIndicator = true; tagsCountCol.Title = "Count"; treeviewTags.AppendColumn(tagsCol); treeviewTags.AppendColumn(tagsCountCol); treeviewTags.Model = notes.TagStore; CellRendererText tagTitleCell = new CellRendererText(); tagsCol.PackStart(tagTitleCell, true); tagsCol.AddAttribute(tagTitleCell, "text", 0); CellRendererText tagCountCell = new CellRendererText(); tagsCountCol.PackStart(tagCountCell, true); tagsCountCol.AddAttribute(tagCountCell, "text", 1); }
// TODO show only string values in combobox, not their ids public MainWindow (Dictionary<int, string> values, int defaultIndex): base (Gtk.WindowType.Toplevel) { Build (); TreeIter defaultIter = new TreeIter(); ListStore store = new ListStore (typeof(int), typeof(string)); foreach (KeyValuePair<int, string> pair in values) { TreeIter currentIter = store.AppendValues (pair.Key, pair.Value); if (pair.Key == defaultIndex) defaultIter = currentIter; } CellRendererText rendererText = new CellRendererText (); ComboBox.PackStart (rendererText, false); ComboBox.SetAttributes (rendererText, "text", 1); ComboBox.Model = store; ComboBox.SetActiveIter (defaultIter); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build(); wordStore = new ListStore(typeof(string), typeof(string)); var lexColumn = new TreeViewColumn(); var cellRendererText = new CellRendererText(); lexColumn.PackStart(cellRendererText, true); lexColumn.AddAttribute(cellRendererText, "text", 0); lexColumn.Title = "Con Word"; wordList.AppendColumn(lexColumn); wordListFilter = new TreeModelFilter(wordStore, null); wordListFilter.VisibleFunc = SearchFilter; wordList.Model = wordListFilter; statusbar1.Push(0, "No language loaded"); currentWord.WordChanged += OnCurrentWordChanged; langFileFilter = new FileFilter(); langFileFilter.AddPattern("*.lang"); }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); _domainsStore = new ListStore(typeof(string)); CellRendererText cell = new CellRendererText(); cbDomains.PackStart(cell, false); cbDomains.AddAttribute(cell, "text", 0); cbDomains.Model = _domainsStore; _blockDevStore = new ListStore(typeof(string)); cbBlockDevice.PackStart(cell, false); cbBlockDevice.AddAttribute(cell, "text", 0); cbBlockDevice.Model = _blockDevStore; _interfaceStore = new ListStore(typeof(string)); cbInterface.PackStart(cell, false); cbInterface.AddAttribute(cell, "text", 0); cbInterface.Model = _interfaceStore; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); Console.WriteLine ("MainWindow ctor."); QueryResult queryResult = PersisterHelper.Get ("select * from articulo"); string[] columnNames = queryResult.ColumnNames; CellRendererText cellRendererText = new CellRendererText (); for (int index = 0; index < columnNames.Length; index++) { int column = index; treeView.AppendColumn (columnNames [index], cellRendererText, delegate(TreeViewColumn tree_column, CellRenderer cell, TreeModel tree_model, TreeIter iter) { IList row = (IList)tree_model.GetValue(iter, 0); cellRendererText.Text = row[column].ToString(); }); } ListStore listStore = new ListStore (typeof(IList)); foreach (IList row in queryResult.Rows) listStore.AppendValues (row); treeView.Model = listStore; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); // MyFunction[] funtions = new MyFunction[]{suma, resta, multiplica}; // // int random = new Random().Next(3); // // f = functions [random]; // // // // Console.WriteLine("f={0}", f(5,3)); CellRenderer cellRenderer = new CellRendererText();//crea(dibuja) celda de texto comboBox.PackStart(cellRenderer, false); //expand=false comboBox.AddAttribute (cellRenderer, "text", 1); ListStore listStore = new ListStore(typeof(string), typeof(string));//creo dos columnas id y nombre comboBox.Model = listStore; listStore.AppendValues("1", "Uno"); listStore.AppendValues("2", "Dos"); // comboBox.Changed += delegate //se ejecuta solo cuando hay un cambio // { // // TreeIter treeIter; // if( comboBox.GetActiveIter(out treeIter))//item seleccionado // { // object value = listStore.GetValue(treeIter, 0);//tenemos el indice y la columna // //en esta variable guardo el valor de la columna y lo muestro // Console.WriteLine("comboBox.Changed delegate value={0}", value); // } // // }; comboBox.Changed += comboBoxChanged; }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build (); MyFuction f; MyFuction[]functions = new MyFuction[]{suma, resta, multiplica}; int random = new Random().Next(3); f = functions[random]; Console.WriteLine("f={0}", f(5,3)); //ComboBox CellRenderer cellRenderer = new CellRendererText(); comboBox.PackStart(cellRenderer,false); //expand=false comboBox.AddAttribute(cellRenderer, "text", 1); ListStore listStore = new ListStore(typeof(string),typeof(string)); comboBox.Model = listStore; listStore.AppendValues("1","Valor uno"); listStore.AppendValues("2","Valor dos"); listStore.AppendValues("3","Valor tres"); comboBox.Changed += delegate { Console.WriteLine ("comboBox.Changed"); TreeIter treeIter; if(comboBox.GetActiveIter (out treeIter)) { //Item seleccionado object value = listStore.GetValue(treeIter, 0); Console.WriteLine("comboBox.Changed value={0}",value); } }; comboBox.Changed += comboBoxChanged; }
public LayerListWidget(IEditorApplication application) { this.application = application; ButtonPressEvent += OnButtonPressed; VisibilityRenderer visibilityRenderer = new VisibilityRenderer(); visibilityRenderer.VisibilityChanged += OnVisibilityChange; TreeViewColumn visibilityColumn = new TreeViewColumn("Visibility", visibilityRenderer); visibilityColumn.SetCellDataFunc(visibilityRenderer, VisibilityDataFunc); AppendColumn(visibilityColumn); CellRendererText TextRenderer = new CellRendererText(); TreeViewColumn TypeColumn = new TreeViewColumn(); TypeColumn.PackStart(TextRenderer, true); TypeColumn.SetCellDataFunc(TextRenderer, TextDataFunc); TypeColumn.Title = "Type"; AppendColumn(TypeColumn); HeadersVisible = false; application.SectorChanged += OnSectorChanged; application.TilemapChanged += OnTilemapChanged; }
public MainWindow(string url) : base(Gtk.WindowType.Toplevel) { Build(); Url = url; _pbkdfHandler = new PbkdfHandler(); _hmacGenerator = new HmacGenerator(); _sqrlSigner = new SqrlSigner(); _sqrlClient = new SqrlClient(_pbkdfHandler, _hmacGenerator, _sqrlSigner); this.domainLabel.Text = string.Format("Do you want to log in to {0}", _sqrlClient.GetDomainFromUrl(url)); _identities = GetIdentities(); if(_identities.Count() <= 0) { var newIdentity = CreateNewIdentity(); _identities.Add(newIdentity); SaveIdentities(_identities); } var comboList = new ListStore(typeof(int), typeof(string)); var textRenderer = new CellRendererText(); identityCombo.PackStart(textRenderer, false); identityCombo.AddAttribute(textRenderer, "text", 1); var identitiesArray = _identities.ToArray(); for(var i = 0; i < identitiesArray.Length; i++) { comboList.AppendValues(i, identitiesArray[i].Name); } identityCombo.Model = comboList; }
private void AddColumns(TreeView treeView) { CellRendererText text; CellRendererToggle toggle; // column for holiday names text = new CellRendererText(); text.Xalign = 0.0f; columns.Add(text); TreeViewColumn column = new TreeViewColumn("Holiday", text, "text", Column.HolidayName); treeView.InsertColumn(column, (int)Column.HolidayName); // alex column toggle = new CellRendererToggle(); toggle.Xalign = 0.0f; columns.Add(toggle); toggle.Toggled += new ToggledHandler(ItemToggled); column = new TreeViewColumn("Alex", toggle, "active", (int)Column.Alex, "visible", (int)Column.Visible, "activatable", (int)Column.World); column.Sizing = TreeViewColumnSizing.Fixed; column.FixedWidth = 50; column.Clickable = true; treeView.InsertColumn(column, (int)Column.Alex); // havoc column toggle = new CellRendererToggle(); toggle.Xalign = 0.0f; columns.Add(toggle); toggle.Toggled += new ToggledHandler(ItemToggled); column = new TreeViewColumn("Havoc", toggle, "active", (int)Column.Havoc, "visible", (int)Column.Visible); treeView.InsertColumn(column, (int)Column.Havoc); column.Sizing = TreeViewColumnSizing.Fixed; column.FixedWidth = 50; column.Clickable = true; // tim column toggle = new CellRendererToggle(); toggle.Xalign = 0.0f; columns.Add(toggle); toggle.Toggled += new ToggledHandler(ItemToggled); column = new TreeViewColumn("Tim", toggle, "active", (int)Column.Tim, "visible", (int)Column.Visible, "activatable", (int)Column.World); treeView.InsertColumn(column, (int)Column.Tim); column.Sizing = TreeViewColumnSizing.Fixed; column.FixedWidth = 50; column.Clickable = true; // owen column toggle = new CellRendererToggle(); toggle.Xalign = 0.0f; columns.Add(toggle); toggle.Toggled += new ToggledHandler(ItemToggled); column = new TreeViewColumn("Owen", toggle, "active", (int)Column.Owen, "visible", (int)Column.Visible); treeView.InsertColumn(column, (int)Column.Owen); column.Sizing = TreeViewColumnSizing.Fixed; column.FixedWidth = 50; column.Clickable = true; // dave column toggle = new CellRendererToggle(); toggle.Xalign = 0.0f; columns.Add(toggle); toggle.Toggled += new ToggledHandler(ItemToggled); column = new TreeViewColumn("Dave", toggle, "active", (int)Column.Dave, "visible", (int)Column.Visible); treeView.InsertColumn(column, (int)Column.Dave); column.Sizing = TreeViewColumnSizing.Fixed; column.FixedWidth = 50; column.Clickable = true; }
public CommitDialog(ChangeSet changeSet) { Build(); store = new ListStore(typeof(Xwt.Drawing.Image), typeof(string), typeof(string), typeof(bool), typeof(object)); fileList.Model = store; this.changeSet = changeSet; oldMessage = changeSet.GlobalComment; CellRendererText crt = new CellRendererText(); var crp = new CellRendererImage(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.Spacing = 2; colStatus.AddAttribute(crp, "image", 0); colStatus.AddAttribute(crt, "text", 1); CellRendererToggle cellToggle = new CellRendererToggle(); cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); TreeViewColumn colCommit = new TreeViewColumn("", cellToggle, "active", 3); TreeViewColumn colFile = new TreeViewColumn(GettextCatalog.GetString("File"), new CellRendererText(), "text", 2); fileList.AppendColumn(colCommit); fileList.AppendColumn(colStatus); fileList.AppendColumn(colFile); colCommit.Visible = false; object[] exts = AddinManager.GetExtensionObjects("/MonoDevelop/VersionControl/CommitDialogExtensions", false); bool separatorRequired = false; foreach (object ob in exts) { CommitDialogExtension ext = ob as CommitDialogExtension; if (ext == null) { MessageService.ShowError("Commit extension type " + ob.GetType() + " must be a subclass of CommitDialogExtension"); continue; } if (ext.Initialize(changeSet)) { ext.CommitMessageTextViewHook(textview); if (separatorRequired) { HSeparator sep = new HSeparator(); sep.Show(); vboxExtensions.PackEnd(sep, false, false, 0); } vboxExtensions.PackEnd(ext, false, false, 0); extensions.Add(ext); ext.AllowCommitChanged += HandleAllowCommitChanged; separatorRequired = true; } else { ext.Destroy(); } } HandleAllowCommitChanged(null, null); foreach (ChangeSetItem info in changeSet.Items) { Xwt.Drawing.Image statusicon = VersionControlService.LoadIconForStatus(info.Status); string lstatus = VersionControlService.GetStatusLabel(info.Status); string localpath; if (info.IsDirectory) { localpath = (!info.LocalPath.IsChildPathOf(changeSet.BaseLocalPath)? ".": (string)info.LocalPath.ToRelative(changeSet.BaseLocalPath)); } else { localpath = System.IO.Path.GetFileName((string)info.LocalPath); } if (localpath.Length > 0 && localpath[0] == System.IO.Path.DirectorySeparatorChar) { localpath = localpath.Substring(1); } if (localpath == "") { localpath = "."; } // not sure if this happens store.AppendValues(statusicon, lstatus, localpath, true, info); selected.Add(info.LocalPath); } if (string.IsNullOrEmpty(changeSet.GlobalComment)) { AuthorInformation aInfo; CommitMessageFormat fmt = VersionControlService.GetCommitMessageFormat(changeSet, out aInfo); Message = changeSet.GenerateGlobalComment(fmt, aInfo); } else { Message = changeSet.GlobalComment; } textview.Buffer.Changed += OnTextChanged; responseSensitive = !string.IsNullOrEmpty(Message); // Focus the text view and move the insert point to the beginning. Makes it easier to insert // a comment header. textview.Buffer.MoveMark(textview.Buffer.InsertMark, textview.Buffer.StartIter); textview.Buffer.MoveMark(textview.Buffer.SelectionBound, textview.Buffer.StartIter); textview.GrabFocus(); textview.Buffer.MarkSet += OnMarkSet; SetResponseSensitive(ResponseType.Ok, responseSensitive); }
public RegexToolkitWidget() { this.Build(); optionsStore = new ListStore(typeof(bool), typeof(string), typeof(Options)); resultStore = new Gtk.TreeStore(typeof(string), typeof(string), typeof(int), typeof(int)); FillOptionsBox(); this.buttonStart.Sensitive = false; this.entryRegEx.Changed += UpdateStartButtonSensitivity; this.inputTextview.Buffer.Changed += UpdateStartButtonSensitivity; this.buttonStart.Clicked += delegate { if (regexThread != null && regexThread.IsAlive) { regexThread.Abort(); regexThread.Join(); SetButtonStart(GettextCatalog.GetString("Start Regular E_xpression"), "gtk-execute"); regexThread = null; return; } regexThread = new Thread(delegate() { PerformQuery(inputTextview.Buffer.Text, this.entryRegEx.Text, this.entryReplace.Text, GetOptions()); }); regexThread.IsBackground = true; regexThread.Name = "regex thread"; regexThread.Start(); SetButtonStart(GettextCatalog.GetString("Stop e_xecution"), "gtk-media-stop"); SetFindMode(!checkbuttonReplace.Active); }; SetFindMode(true); var cellRendText = new CellRendererText(); cellRendText.Ellipsize = Pango.EllipsizeMode.End; this.optionsTreeview.Model = this.optionsStore; this.optionsTreeview.HeadersVisible = false; CellRendererToggle cellRendToggle = new CellRendererToggle(); cellRendToggle.Toggled += new ToggledHandler(OptionToggled); cellRendToggle.Activatable = true; this.optionsTreeview.AppendColumn("", cellRendToggle, "active", 0); this.optionsTreeview.AppendColumn("", cellRendText, "text", 1); this.resultsTreeview.Model = this.resultStore; this.resultsTreeview.HeadersVisible = false; var col = new TreeViewColumn(); this.resultsTreeview.AppendColumn(col); var pix = new CellRendererImage(); col.PackStart(pix, false); col.AddAttribute(pix, "stock_id", 0); col.PackStart(cellRendText, true); col.AddAttribute(cellRendText, "text", 1); this.resultsTreeview.RowActivated += delegate(object sender, RowActivatedArgs e) { Gtk.TreeIter iter; if (resultStore.GetIter(out iter, e.Path)) { int index = (int)resultStore.GetValue(iter, 2); int length = (int)resultStore.GetValue(iter, 3); if (index >= 0) { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(index), this.inputTextview.Buffer.GetIterAtOffset(index + length)); } else { this.inputTextview.Buffer.SelectRange(this.inputTextview.Buffer.GetIterAtOffset(0), this.inputTextview.Buffer.GetIterAtOffset(0)); } } }; this.entryReplace.Sensitive = this.checkbuttonReplace.Active = false; this.checkbuttonReplace.Toggled += delegate { this.entryReplace.Sensitive = this.checkbuttonReplace.Active; }; this.vbox4.WidthRequest = 380; this.scrolledwindow5.HeightRequest = 150; this.scrolledwindow1.HeightRequest = 150; Show(); }
public KeyBindingsPanel() { this.Build(); keyStore = new TreeStore(typeof(Command), typeof(string), typeof(string), typeof(string), typeof(int), typeof(string), typeof(bool), typeof(bool)); keyTreeView.Model = filterModel = new TreeModelFilter(keyStore, null); filterModel.VisibleColumn = visibleCol; TreeViewColumn col = new TreeViewColumn(); col.Title = GettextCatalog.GetString("Command"); col.Spacing = 4; CellRendererImage crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "stock-id", iconCol); col.AddAttribute(crp, "visible", iconVisibleCol); CellRendererText crt = new CellRendererText(); col.PackStart(crt, true); col.AddAttribute(crt, "text", labelCol); col.AddAttribute(crt, "weight", boldCol); keyTreeView.AppendColumn(col); bindingTVCol = new TreeViewColumn(); bindingTVCol.Title = GettextCatalog.GetString("Key Binding"); CellRendererKeyButtons bindingRenderer = new CellRendererKeyButtons(this); bindingRenderer.KeyBindingSelected += BindingRenderer_KeyBindingSelected; bindingTVCol.PackStart(bindingRenderer, false); bindingTVCol.AddAttribute(bindingRenderer, "text", bindingCol); bindingTVCol.AddAttribute(bindingRenderer, "command", commandCol); keyTreeView.AppendColumn(bindingTVCol); keyTreeView.AppendColumn(GettextCatalog.GetString("Description"), new CellRendererText(), "text", descCol); keyTreeView.Selection.Changed += OnKeysTreeViewSelectionChange; accelEntry.KeyPressEvent += OnAccelEntryKeyPress; accelEntry.KeyReleaseEvent += OnAccelEntryKeyRelease; accelEntry.Changed += delegate { UpdateWarningLabel(); }; updateButton.Clicked += OnUpdateButtonClick; addButton.Clicked += OnAddRemoveButtonClick; currentBindings = KeyBindingService.CurrentKeyBindingSet.Clone(); schemes = new List <KeyBindingScheme> (KeyBindingService.Schemes); foreach (KeyBindingScheme s in schemes) { schemeCombo.AppendText(s.Name); } if (schemes.Count > 0) { schemeCombo.RowSeparatorFunc = (TreeModel model, TreeIter iter) => { if (model.GetValue(iter, 0) as string == "---") { return(true); } return(false); }; schemeCombo.AppendText("---"); } schemeCombo.AppendText(GettextCatalog.GetString("Custom")); SelectCurrentScheme(); schemeCombo.Changed += OnKeyBindingSchemeChanged; searchEntry.Ready = true; searchEntry.Visible = true; searchEntry.Changed += delegate { processedFilterTerms = searchEntry.Entry.Text.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries) .Select(s => s.ToLower()).ToArray();; filterChanged = true; if (!filterTimeoutRunning) { filterTimeoutRunning = true; GLib.Timeout.Add(50, delegate { if (!filterChanged) { if (filterTimeoutRunning) { Refilter(); } filterTimeoutRunning = false; return(false); } filterChanged = false; return(true); }); } ; }; keyTreeView.SearchColumn = -1; // disable the interactive search //HACK: workaround for MD Bug 608021: Stetic loses values assigned to "new" properties of custom widget conflicButton.Label = GettextCatalog.GetString("_View Conflicts"); conflicButton.UseUnderline = true; }
void AddMultiOptionCombo(OptionCombo option) { if (option.Items.Count < 2) { throw new InvalidOperationException(); } var model = new ListStore(new Type[] { typeof(string), typeof(object) }); var renderer = new CellRendererText(); foreach (var item in option.Items) { var label = item.Name; var sfx = item.Framework; bool hasOtherVersions = false; foreach (var other in option.Items) { if (sfx == other.Framework) { continue; } if (!string.IsNullOrEmpty(other.Framework.MonoSpecificVersionDisplayName)) { continue; } hasOtherVersions = true; break; } if (hasOtherVersions && string.IsNullOrEmpty(sfx.MonoSpecificVersionDisplayName)) { label += " or later"; } model.AppendValues(label, item.Targets); } option.Combo = new ComboBox(model); option.Check = new CheckButton(); option.Combo.PackStart(renderer, true); option.Combo.AddAttribute(renderer, "text", 0); option.Combo.Active = 0; option.Check.Show(); option.Combo.Show(); option.Combo.Changed += (sender, e) => { if (option.Check.Active) { TargetFrameworkChanged(option); } }; option.Check.Toggled += (sender, e) => { TargetFrameworkChanged(option); }; var hbox = new HBox(); hbox.PackStart(option.Check, false, false, 0); hbox.PackStart(option.Combo, true, true, 0); hbox.Show(); var alignment = new Alignment(0.0f, 0.5f, 1.0f, 1.0f) { LeftPadding = 18, RightPadding = 18 }; alignment.Add(hbox); alignment.Show(); vbox1.PackStart(alignment, false, true, 0); }
//DataTable Mode public TreeViewPartialPayment(Window pSourceWindow, DataRow pDefaultValue, Type pDialogType, GenericTreeViewMode pGenericTreeViewMode = GenericTreeViewMode.Default, GenericTreeViewNavigatorMode pGenericTreeViewNavigatorMode = GenericTreeViewNavigatorMode.Default) { //Init Vars DataRow defaultValue = (pDefaultValue != null) ? pDefaultValue : null; //Override Default DialogType with Parameter Dialog Type, this way we can have diferent DialogTypes for GenericTreeView Type typeDialogClass = (pDialogType != null) ? pDialogType : null; //Defaults CellRendererText cellRendererCurrency = new CellRendererText() { Alignment = Pango.Alignment.Right, Xalign = 1.0F }; int decimalsColumnWidth = 100; //Configure columnProperties List <GenericTreeViewColumnProperty> columnProperties = new List <GenericTreeViewColumnProperty>(); /*00*/ columnProperties.Add(new GenericTreeViewColumnProperty("Oid") { Type = typeof(Guid), Visible = false }); /*01*/ columnProperties.Add(new GenericTreeViewColumnProperty("Code") { Type = typeof(String), Title = Resx.global_record_code }); /*02*/ columnProperties.Add(new GenericTreeViewColumnProperty("Designation") { Type = typeof(String), Title = Resx.global_designation, Expand = true }); /*03*/ columnProperties.Add(new GenericTreeViewColumnProperty("PriceFinal") { Type = typeof(Decimal), Title = Resx.global_price, MinWidth = decimalsColumnWidth, MaxWidth = decimalsColumnWidth, CellRenderer = cellRendererCurrency }); /*04*/ columnProperties.Add(new GenericTreeViewColumnProperty("Vat") { Type = typeof(Decimal), Title = Resx.global_vat_rate, MinWidth = decimalsColumnWidth, MaxWidth = decimalsColumnWidth, Alignment = 1.0F, CellRenderer = cellRendererCurrency }); /*05*/ columnProperties.Add(new GenericTreeViewColumnProperty("Discount") { Type = typeof(Decimal), Title = Resx.global_discount, MinWidth = decimalsColumnWidth, MaxWidth = decimalsColumnWidth, Alignment = 1.0F, CellRenderer = cellRendererCurrency }); /*06*/ columnProperties.Add(new GenericTreeViewColumnProperty("Place") { Type = typeof(String), Title = Resx.global_placetable_place }); //Other Invisible Fields /*07*/ columnProperties.Add(new GenericTreeViewColumnProperty("Price") { Type = typeof(Decimal), Visible = false }); /*08*/ columnProperties.Add(new GenericTreeViewColumnProperty("Quantity") { Type = typeof(Int16), Visible = false }); /*09*/ columnProperties.Add(new GenericTreeViewColumnProperty("UnitMeasure") { Type = typeof(String), Visible = false }); /*10*/ columnProperties.Add(new GenericTreeViewColumnProperty("PlaceOid") { Type = typeof(Guid), Visible = false }); /*11*/ columnProperties.Add(new GenericTreeViewColumnProperty("TableOid") { Type = typeof(Guid), Visible = false }); /*12*/ columnProperties.Add(new GenericTreeViewColumnProperty("PriceType") { Type = typeof(PriceType), Visible = false }); /*13*/ columnProperties.Add(new GenericTreeViewColumnProperty("Token1") { Type = typeof(string), Visible = false }); //ClassifiedID /*14*/ columnProperties.Add(new GenericTreeViewColumnProperty("Token2") { Type = typeof(string), Visible = false }); //FriendlyID /*15*/ columnProperties.Add(new GenericTreeViewColumnProperty("Notes") { Type = typeof(string), Visible = false }); //init DataTable DataTable dataTable = GetDataTable(columnProperties); //Call Base Initializer base.InitObject( pSourceWindow, //Pass parameter pDefaultValue, //Pass parameter pGenericTreeViewMode, //Pass parameter pGenericTreeViewNavigatorMode, //Pass parameter columnProperties, //Created Here dataTable, //Created Here typeDialogClass //Created Here ); //Use this in SelectRecord to format TreeView to Touch //this.FormatColumnPropertiesForTouch(); }
public LogWidget(VersionControlDocumentInfo info) { this.Build(); this.info = info; if (info.Document != null) { this.preselectFile = info.Item.Path; } var separator = new HeaderBox(); separator.SetMargins(1, 0, 0, 0); separator.HeightRequest = 4; separator.ShowAll(); hpaned1 = hpaned1.ReplaceWithWidget(new HPanedThin(), true); vpaned1 = vpaned1.ReplaceWithWidget(new VPanedThin() { HandleWidget = separator }, true); revertButton = new DocumentToolButton("vc-revert-command", GettextCatalog.GetString("Revert changes from this revision")); revertButton.Sensitive = false; revertButton.Clicked += new EventHandler(RevertRevisionClicked); revertToButton = new DocumentToolButton("vc-revert-command", GettextCatalog.GetString("Revert to this revision")); revertToButton.Sensitive = false; revertToButton.Clicked += new EventHandler(RevertToRevisionClicked); refreshButton = new DocumentToolButton(Gtk.Stock.Refresh, GettextCatalog.GetString("Refresh")); refreshButton.Clicked += new EventHandler(RefreshClicked); searchEntry = new SearchEntry(); searchEntry.WidthRequest = 200; searchEntry.ForceFilterButtonVisible = true; searchEntry.EmptyMessage = GettextCatalog.GetString("Search"); searchEntry.Changed += HandleSearchEntryFilterChanged; searchEntry.Ready = true; searchEntry.Show(); messageRenderer.Ellipsize = Pango.EllipsizeMode.End; TreeViewColumn colRevMessage = new TreeViewColumn(); colRevMessage.Title = GettextCatalog.GetString("Message"); var graphRenderer = new RevisionGraphCellRenderer(); colRevMessage.PackStart(graphRenderer, false); colRevMessage.SetCellDataFunc(graphRenderer, GraphFunc); colRevMessage.PackStart(messageRenderer, true); colRevMessage.SetCellDataFunc(messageRenderer, MessageFunc); colRevMessage.Sizing = TreeViewColumnSizing.Autosize; treeviewLog.AppendColumn(colRevMessage); colRevMessage.MinWidth = 350; colRevMessage.Resizable = true; TreeViewColumn colRevDate = new TreeViewColumn(GettextCatalog.GetString("Date"), textRenderer); colRevDate.SetCellDataFunc(textRenderer, DateFunc); colRevDate.Resizable = true; treeviewLog.AppendColumn(colRevDate); TreeViewColumn colRevAuthor = new TreeViewColumn(); colRevAuthor.Title = GettextCatalog.GetString("Author"); colRevAuthor.PackStart(pixRenderer, false); colRevAuthor.PackStart(textRenderer, true); colRevAuthor.SetCellDataFunc(textRenderer, AuthorFunc); colRevAuthor.SetCellDataFunc(pixRenderer, AuthorIconFunc); colRevAuthor.Resizable = true; treeviewLog.AppendColumn(colRevAuthor); TreeViewColumn colRevNum = new TreeViewColumn(GettextCatalog.GetString("Revision"), textRenderer); colRevNum.SetCellDataFunc(textRenderer, RevisionFunc); colRevNum.Resizable = true; treeviewLog.AppendColumn(colRevNum); treeviewLog.Model = logstore; treeviewLog.Selection.Changed += TreeSelectionChanged; treeviewFiles = new FileTreeView(); treeviewFiles.DiffLineActivated += HandleTreeviewFilesDiffLineActivated; scrolledwindowFiles.Child = treeviewFiles; scrolledwindowFiles.ShowAll(); changedpathstore = new TreeStore(typeof(Xwt.Drawing.Image), typeof(string), // icon/file name typeof(Xwt.Drawing.Image), typeof(string), // icon/operation typeof(string), // path typeof(string), // revision path (invisible) typeof(string []) // diff ); TreeViewColumn colChangedFile = new TreeViewColumn(); var crp = new CellRendererImage(); var crt = new CellRendererText(); colChangedFile.Title = GettextCatalog.GetString("File"); colChangedFile.PackStart(crp, false); colChangedFile.PackStart(crt, true); colChangedFile.AddAttribute(crp, "image", 2); colChangedFile.AddAttribute(crt, "text", 3); treeviewFiles.AppendColumn(colChangedFile); TreeViewColumn colOperation = new TreeViewColumn(); colOperation.Title = GettextCatalog.GetString("Operation"); colOperation.PackStart(crp, false); colOperation.PackStart(crt, true); colOperation.AddAttribute(crp, "image", 0); colOperation.AddAttribute(crt, "text", 1); treeviewFiles.AppendColumn(colOperation); TreeViewColumn colChangedPath = new TreeViewColumn(); colChangedPath.Title = GettextCatalog.GetString("Path"); diffRenderer.DrawLeft = true; colChangedPath.PackStart(diffRenderer, true); colChangedPath.SetCellDataFunc(diffRenderer, SetDiffCellData); treeviewFiles.AppendColumn(colChangedPath); treeviewFiles.Model = changedpathstore; treeviewFiles.TestExpandRow += HandleTreeviewFilesTestExpandRow; treeviewFiles.Events |= Gdk.EventMask.PointerMotionMask; textviewDetails.WrapMode = Gtk.WrapMode.Word; labelAuthor.Text = ""; labelDate.Text = ""; labelRevision.Text = ""; vbox2.Remove(scrolledwindow1); HeaderBox tb = new HeaderBox(); tb.Show(); tb.SetMargins(1, 0, 0, 0); tb.ShowTopShadow = true; tb.ShadowSize = 4; tb.SetPadding(8, 8, 8, 8); tb.UseChildBackgroundColor = true; tb.Add(scrolledwindow1); vbox2.PackStart(tb, true, true, 0); }
public OptionsDialog(Gtk.Window parentWindow, object dataObject, string extensionPath, bool removeEmptySections) { buttonCancel = new Gtk.Button(Gtk.Stock.Cancel); AddActionWidget(this.buttonCancel, ResponseType.Cancel); buttonOk = new Gtk.Button(Gtk.Stock.Ok); this.ActionArea.PackStart(buttonOk); buttonOk.Clicked += OnButtonOkClicked; mainHBox = new HBox(); tree = new TreeView(); var sw = new ScrolledWindow(); sw.Add(tree); sw.HscrollbarPolicy = PolicyType.Never; sw.VscrollbarPolicy = PolicyType.Automatic; sw.ShadowType = ShadowType.None; var fboxTree = new HeaderBox(); fboxTree.SetMargins(0, 1, 0, 1); fboxTree.SetPadding(0, 0, 0, 0); fboxTree.BackgroundColor = new Gdk.Color(255, 255, 255); fboxTree.Add(sw); mainHBox.PackStart(fboxTree, false, false, 0); Realized += delegate { fboxTree.BackgroundColor = tree.Style.Base(Gtk.StateType.Normal); }; var vbox = new VBox(); mainHBox.PackStart(vbox, true, true, 0); var headerBox = new HBox(false, 6); image = new Image(); // headerBox.PackStart (image, false, false, 0); labelTitle = new Label(); labelTitle.Xalign = 0; headerBox.PackStart(labelTitle, true, true, 0); headerBox.BorderWidth = 12; var fboxHeader = new HeaderBox(); fboxHeader.SetMargins(0, 1, 0, 0); fboxHeader.Add(headerBox); // fbox.GradientBackround = true; // fbox.BackgroundColor = new Gdk.Color (255, 255, 255); Realized += delegate { var c = new HslColor(Style.Background(Gtk.StateType.Normal)); c.L += 0.09; fboxHeader.BackgroundColor = c; }; vbox.PackStart(fboxHeader, false, false, 0); pageFrame = new HBox(); var fbox = new HeaderBox(); fbox.SetMargins(0, 1, 0, 0); fbox.ShowTopShadow = true; fbox.Add(pageFrame); vbox.PackStart(fbox, true, true, 0); this.VBox.PackStart(mainHBox, true, true, 0); this.removeEmptySections = removeEmptySections; extensionContext = AddinManager.CreateExtensionContext(); this.mainDataObject = dataObject; this.extensionPath = extensionPath; if (parentWindow != null) { TransientFor = parentWindow; } ImageService.EnsureStockIconIsLoaded(emptyCategoryIcon, treeIconSize); ImageService.EnsureStockIconIsLoaded(emptyCategoryIcon, headerIconSize); store = new TreeStore(typeof(OptionsDialogSection)); tree.Model = store; tree.HeadersVisible = false; // Column 0 is used to add some padding at the left of the expander TreeViewColumn col0 = new TreeViewColumn(); col0.MinWidth = 6; tree.AppendColumn(col0); TreeViewColumn col = new TreeViewColumn(); var crp = new CellRendererPixbuf(); col.PackStart(crp, false); col.SetCellDataFunc(crp, PixbufCellDataFunc); var crt = new CellRendererText(); col.PackStart(crt, true); col.SetCellDataFunc(crt, TextCellDataFunc); tree.AppendColumn(col); tree.ExpanderColumn = col; tree.Selection.Changed += OnSelectionChanged; Child.ShowAll(); InitializeContext(extensionContext); FillTree(); ExpandCategories(); this.DefaultResponse = Gtk.ResponseType.Ok; DefaultWidth = 722; DefaultHeight = 502; }
void InitializeComponents() { iconView = new TemplateView(); iconView.ShowAll(); boxTemplates.PackStart(iconView, true, true, 0); catStore = new TreeStore(typeof(string), typeof(List <Category>), typeof(List <TemplateItem>)); TreeViewColumn treeViewColumn = new TreeViewColumn(); treeViewColumn.Title = "categories"; CellRenderer cellRenderer = new CellRendererText(); treeViewColumn.PackStart(cellRenderer, true); treeViewColumn.AddAttribute(cellRenderer, "text", 0); catView.AppendColumn(treeViewColumn); catStore.SetSortColumnId(0, SortType.Ascending); catView.Model = catStore; okButton.Clicked += new EventHandler(OpenEvent); cancelButton.Clicked += new EventHandler(cancelClicked); nameEntry.Changed += new EventHandler(NameChanged); nameEntry.Activated += new EventHandler(OpenEvent); infoLabel.Text = string.Empty; labelTemplateTitle.Text = string.Empty; Project[] projects = null; if (parentProject == null) { projects = IdeApp.Workspace.GetAllProjects().ToArray(); } if (projects != null && projects.Length > 0) { Project curProject = IdeApp.ProjectOperations.CurrentSelectedProject; boxProject.Visible = true; projectAddCheckbox.Active = curProject != null; projectAddCheckbox.Toggled += new EventHandler(AddToProjectToggled); projectNames = new string[projects.Length]; projectRefs = new Project[projects.Length]; int i = 0; bool singleSolution = IdeApp.Workspace.Items.Count == 1 && IdeApp.Workspace.Items[0] is Solution; foreach (Project project in projects) { projectRefs[i] = project; if (singleSolution) { projectNames[i++] = project.Name; } else { projectNames[i++] = project.ParentSolution.Name + "/" + project.Name; } } Array.Sort(projectNames, projectRefs); i = Array.IndexOf(projectRefs, curProject); foreach (string pn in projectNames) { projectAddCombo.AppendText(pn); } projectAddCombo.Active = i != -1 ? i : 0; projectAddCombo.Sensitive = projectAddCheckbox.Active; projectAddCombo.Changed += new EventHandler(AddToProjectComboChanged); projectPathLabel.Sensitive = projectAddCheckbox.Active; projectFolderEntry.Sensitive = projectAddCheckbox.Active; if (curProject != null) { projectFolderEntry.Path = curProject.BaseDirectory; } projectFolderEntry.PathChanged += new EventHandler(AddToProjectPathChanged); if (curProject != null) { basePath = curProject.BaseDirectory; parentProject = curProject; } } else { boxProject.Visible = false; } catView.Selection.Changed += new EventHandler(CategoryChange); catView.RowActivated += new RowActivatedHandler(CategoryActivated); iconView.SelectionChanged += new EventHandler(SelectedTemplateChanged); iconView.DoubleClicked += new EventHandler(OpenEvent); InitializeDialog(false); InitializeView(); UpdateOkStatus(); }
public CodeMetricsWidget() { this.Build(); treeviewMetrics.RulesHint = true; treeviewMetrics.Model = metricStore; projects = new List <ProjectProperties>(); crt = new CellRendererText(); crt.Ellipsize = Pango.EllipsizeMode.Start; iconCol = new TreeViewColumn(GettextCatalog.GetString("Icon"), new Gtk.CellRendererPixbuf(), "pixbuf", 0); iconCol.SortIndicator = true; iconCol.SortColumnId = 1; iconCol.Expand = false; iconCol.Resizable = true; treeviewMetrics.AppendColumn(iconCol); typenameCol = new TreeViewColumn(GettextCatalog.GetString("Type name"), crt, "text", 1); typenameCol.SortIndicator = true; typenameCol.SortColumnId = 0; typenameCol.Expand = true; typenameCol.Resizable = true; treeviewMetrics.AppendColumn(typenameCol); cyclometricComplexityCol = new TreeViewColumn(GettextCatalog.GetString("Cyclometric Complexity"), new CellRendererText(), "text", 2); cyclometricComplexityCol.SortIndicator = true; cyclometricComplexityCol.SortColumnId = 0; cyclometricComplexityCol.Reorderable = true; cyclometricComplexityCol.Resizable = false; treeviewMetrics.AppendColumn(cyclometricComplexityCol); classCouplingCol = new TreeViewColumn(GettextCatalog.GetString("Class Coupling"), new CellRendererText(), "text", 3); classCouplingCol.SortIndicator = true; classCouplingCol.SortColumnId = 0; classCouplingCol.Reorderable = true; classCouplingCol.Resizable = false; treeviewMetrics.AppendColumn(classCouplingCol); realLocCol = new TreeViewColumn(GettextCatalog.GetString("Real Loc"), new CellRendererText(), "text", 4); realLocCol.SortIndicator = true; realLocCol.SortColumnId = 0; realLocCol.Reorderable = true; realLocCol.Resizable = false; treeviewMetrics.AppendColumn(realLocCol); commentsLocCol = new TreeViewColumn(GettextCatalog.GetString("Comments Loc"), new CellRendererText(), "text", 5); commentsLocCol.SortIndicator = true; commentsLocCol.SortColumnId = 0; commentsLocCol.Reorderable = true; commentsLocCol.Resizable = false; treeviewMetrics.AppendColumn(commentsLocCol); // TODO: When user clicks on the respective type then the corresponding filename containing that type should open this.treeviewMetrics.RowActivated += delegate { Gtk.TreeIter selectedIter; if (treeviewMetrics.Selection.GetSelected(out selectedIter)) { rowSelectTypeName = (IProperties)metricStore.GetValue(selectedIter, 6); MonoDevelop.Ide.IdeApp.Workbench.OpenDocument(rowSelectTypeName.FilePath); MonoDevelop.Ide.IdeApp.Workbench.ActiveDocument.Editor.SetCaretTo(rowSelectTypeName.StartLine, 0); } }; this.treeviewMetrics.CursorChanged += delegate { Gtk.TreeIter selectedIter; if (treeviewMetrics.Selection.GetSelected(out selectedIter)) { rowSelectTypeName = (IProperties)metricStore.GetValue(selectedIter, 6); Gtk.Application.Invoke(delegate { textviewReport.Buffer.Text = CodeMetricsService.GenerateTypeMetricText(rowSelectTypeName); }); } }; }
private SettingsWindow(MainWindow parent, Builder builder, VirtualFileSystem virtualFileSystem, HLE.FileSystem.Content.ContentManager contentManager) : base(builder.GetObject("_settingsWin").Handle) { Icon = new Gdk.Pixbuf(Assembly.GetExecutingAssembly(), "Ryujinx.Ui.Resources.Logo_Ryujinx.png"); _parent = parent; builder.Autoconnect(this); _timeZoneContentManager = new TimeZoneContentManager(); _timeZoneContentManager.InitializeInstance(virtualFileSystem, contentManager, LibHac.FsSystem.IntegrityCheckLevel.None); _validTzRegions = new HashSet <string>(_timeZoneContentManager.LocationNameCache.Length, StringComparer.Ordinal); // Zone regions are identifiers. Must match exactly. // Bind Events. _configureController1.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player1); _configureController2.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player2); _configureController3.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player3); _configureController4.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player4); _configureController5.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player5); _configureController6.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player6); _configureController7.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player7); _configureController8.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Player8); _configureControllerH.Pressed += (sender, args) => ConfigureController_Pressed(sender, PlayerIndex.Handheld); _systemTimeZoneEntry.FocusOutEvent += TimeZoneEntry_FocusOut; _resScaleCombo.Changed += (sender, args) => _resScaleText.Visible = _resScaleCombo.ActiveId == "-1"; // Setup Currents. if (ConfigurationState.Instance.Logger.EnableFileLog) { _fileLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableError) { _errorLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableWarn) { _warningLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableInfo) { _infoLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableStub) { _stubLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableDebug) { _debugLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableGuest) { _guestLogToggle.Click(); } if (ConfigurationState.Instance.Logger.EnableFsAccessLog) { _fsAccessLogToggle.Click(); } foreach (GraphicsDebugLevel level in Enum.GetValues(typeof(GraphicsDebugLevel))) { _graphicsDebugLevel.Append(level.ToString(), level.ToString()); } _graphicsDebugLevel.SetActiveId(ConfigurationState.Instance.Logger.GraphicsDebugLevel.Value.ToString()); if (ConfigurationState.Instance.System.EnableDockedMode) { _dockedModeToggle.Click(); } if (ConfigurationState.Instance.EnableDiscordIntegration) { _discordToggle.Click(); } if (ConfigurationState.Instance.CheckUpdatesOnStart) { _checkUpdatesToggle.Click(); } if (ConfigurationState.Instance.ShowConfirmExit) { _showConfirmExitToggle.Click(); } if (ConfigurationState.Instance.HideCursorOnIdle) { _hideCursorOnIdleToggle.Click(); } if (ConfigurationState.Instance.Graphics.EnableVsync) { _vSyncToggle.Click(); } if (ConfigurationState.Instance.Graphics.EnableShaderCache) { _shaderCacheToggle.Click(); } if (ConfigurationState.Instance.System.EnablePtc) { _ptcToggle.Click(); } if (ConfigurationState.Instance.System.EnableFsIntegrityChecks) { _fsicToggle.Click(); } if (ConfigurationState.Instance.System.ExpandRam) { _expandRamToggle.Click(); } if (ConfigurationState.Instance.System.IgnoreMissingServices) { _ignoreToggle.Click(); } if (ConfigurationState.Instance.Hid.EnableKeyboard) { _directKeyboardAccess.Click(); } if (ConfigurationState.Instance.Ui.EnableCustomTheme) { _custThemeToggle.Click(); } // Custom EntryCompletion Columns. If added to glade, need to override more signals ListStore tzList = new ListStore(typeof(string), typeof(string), typeof(string)); _systemTimeZoneCompletion.Model = tzList; CellRendererText offsetCol = new CellRendererText(); CellRendererText abbrevCol = new CellRendererText(); _systemTimeZoneCompletion.PackStart(offsetCol, false); _systemTimeZoneCompletion.AddAttribute(offsetCol, "text", 0); _systemTimeZoneCompletion.TextColumn = 1; // Regions Column _systemTimeZoneCompletion.PackStart(abbrevCol, false); _systemTimeZoneCompletion.AddAttribute(abbrevCol, "text", 2); int maxLocationLength = 0; foreach (var(offset, location, abbr) in _timeZoneContentManager.ParseTzOffsets()) { var hours = Math.DivRem(offset, 3600, out int seconds); var minutes = Math.Abs(seconds) / 60; var abbr2 = (abbr.StartsWith('+') || abbr.StartsWith('-')) ? string.Empty : abbr; tzList.AppendValues($"UTC{hours:+0#;-0#;+00}:{minutes:D2} ", location, abbr2); _validTzRegions.Add(location); maxLocationLength = Math.Max(maxLocationLength, location.Length); } _systemTimeZoneEntry.WidthChars = Math.Max(20, maxLocationLength + 1); // Ensure minimum Entry width _systemTimeZoneEntry.Text = _timeZoneContentManager.SanityCheckDeviceLocationName(ConfigurationState.Instance.System.TimeZone); _systemTimeZoneCompletion.MatchFunc = TimeZoneMatchFunc; _systemLanguageSelect.SetActiveId(ConfigurationState.Instance.System.Language.Value.ToString()); _systemRegionSelect.SetActiveId(ConfigurationState.Instance.System.Region.Value.ToString()); _resScaleCombo.SetActiveId(ConfigurationState.Instance.Graphics.ResScale.Value.ToString()); _anisotropy.SetActiveId(ConfigurationState.Instance.Graphics.MaxAnisotropy.Value.ToString()); _aspectRatio.SetActiveId(((int)ConfigurationState.Instance.Graphics.AspectRatio.Value).ToString()); _custThemePath.Buffer.Text = ConfigurationState.Instance.Ui.CustomThemePath; _resScaleText.Buffer.Text = ConfigurationState.Instance.Graphics.ResScaleCustom.Value.ToString(); _resScaleText.Visible = _resScaleCombo.ActiveId == "-1"; _graphicsShadersDumpPath.Buffer.Text = ConfigurationState.Instance.Graphics.ShadersDumpPath; _fsLogSpinAdjustment.Value = ConfigurationState.Instance.System.FsGlobalAccessLogMode; _systemTimeOffset = ConfigurationState.Instance.System.SystemTimeOffset; _gameDirsBox.AppendColumn("", new CellRendererText(), "text", 0); _gameDirsBoxStore = new ListStore(typeof(string)); _gameDirsBox.Model = _gameDirsBoxStore; foreach (string gameDir in ConfigurationState.Instance.Ui.GameDirs.Value) { _gameDirsBoxStore.AppendValues(gameDir); } if (_custThemeToggle.Active == false) { _custThemePath.Sensitive = false; _custThemePathLabel.Sensitive = false; _browseThemePath.Sensitive = false; } //Setup system time spinners UpdateSystemTimeSpinners(); _audioBackendStore = new ListStore(typeof(string), typeof(AudioBackend)); TreeIter openAlIter = _audioBackendStore.AppendValues("OpenAL", AudioBackend.OpenAl); TreeIter soundIoIter = _audioBackendStore.AppendValues("SoundIO", AudioBackend.SoundIo); TreeIter sdl2Iter = _audioBackendStore.AppendValues("SDL2", AudioBackend.SDL2); TreeIter dummyIter = _audioBackendStore.AppendValues("Dummy", AudioBackend.Dummy); _audioBackendSelect = ComboBox.NewWithModelAndEntry(_audioBackendStore); _audioBackendSelect.EntryTextColumn = 0; _audioBackendSelect.Entry.IsEditable = false; switch (ConfigurationState.Instance.System.AudioBackend.Value) { case AudioBackend.OpenAl: _audioBackendSelect.SetActiveIter(openAlIter); break; case AudioBackend.SoundIo: _audioBackendSelect.SetActiveIter(soundIoIter); break; case AudioBackend.SDL2: _audioBackendSelect.SetActiveIter(sdl2Iter); break; case AudioBackend.Dummy: _audioBackendSelect.SetActiveIter(dummyIter); break; default: throw new ArgumentOutOfRangeException(); } _audioBackendBox.Add(_audioBackendSelect); _audioBackendSelect.Show(); bool openAlIsSupported = false; bool soundIoIsSupported = false; bool sdl2IsSupported = false; Task.Run(() => { openAlIsSupported = OpenALHardwareDeviceDriver.IsSupported; soundIoIsSupported = SoundIoHardwareDeviceDriver.IsSupported; sdl2IsSupported = SDL2HardwareDeviceDriver.IsSupported; }); // This function runs whenever the dropdown is opened _audioBackendSelect.SetCellDataFunc(_audioBackendSelect.Cells[0], (layout, cell, model, iter) => { cell.Sensitive = ((AudioBackend)_audioBackendStore.GetValue(iter, 1)) switch { AudioBackend.OpenAl => openAlIsSupported, AudioBackend.SoundIo => soundIoIsSupported, AudioBackend.SDL2 => sdl2IsSupported, AudioBackend.Dummy => true, _ => throw new ArgumentOutOfRangeException() }; });
static void SetText(CellRendererText textRenderer, TreeModel model, TreeIter iter, Task task, string text) { textRenderer.Text = text; textRenderer.Weight = (int)((bool)model.GetValue(iter, DataColumns.Read) ? Pango.Weight.Normal : Pango.Weight.Bold); textRenderer.Strikethrough = task.Completed; }
public LayersListWidget() { CanFocus = false; SetSizeRequest(200, 200); SetPolicy(PolicyType.Automatic, PolicyType.Automatic); tree = new TreeView(); tree.HeadersVisible = false; tree.FixedHeightMode = true; tree.Reorderable = false; tree.EnableGridLines = TreeViewGridLines.None; tree.EnableTreeLines = false; tree.ShowExpanders = false; tree.CanFocus = false; var crs = new CellRendererSurface(thumbnail_width, thumbnail_height); var col = new TreeViewColumn("Thumbnail", crs, "surface", store_index_thumbnail); col.Sizing = TreeViewColumnSizing.Fixed; col.FixedWidth = thumbnail_column_width; tree.AppendColumn(col); var textCell = new CellRendererText(); textCell.Ellipsize = Pango.EllipsizeMode.End; col = new TreeViewColumn("Name", textCell, "text", store_index_name); col.Sizing = TreeViewColumnSizing.Fixed; col.Expand = true; col.MinWidth = name_column_min_width; col.MaxWidth = name_column_max_width; tree.AppendColumn(col); var crt = new CellRendererToggle(); crt.Activatable = true; crt.Toggled += LayerVisibilityToggled; col = new TreeViewColumn("Visible", crt, "active", store_index_visibility); col.Sizing = TreeViewColumnSizing.Fixed; col.FixedWidth = visibility_column_width; tree.AppendColumn(col); store = new TreeStore(typeof(Cairo.ImageSurface), typeof(string), typeof(bool), typeof(Layer)); tree.Model = store; tree.RowActivated += HandleRowActivated; Add(tree); PintaCore.Layers.LayerAdded += HandleLayerAddedOrRemoved; PintaCore.Layers.LayerRemoved += HandleLayerAddedOrRemoved; PintaCore.Layers.SelectedLayerChanged += HandleSelectedLayerChanged; PintaCore.Layers.LayerPropertyChanged += HandlePintaCoreLayersLayerPropertyChanged; PintaCore.History.HistoryItemAdded += HandleHistoryItemAdded; PintaCore.History.ActionRedone += HandleHistoryItemAdded; PintaCore.History.ActionUndone += HandleHistoryItemAdded; tree.CursorChanged += HandleLayerSelected; ShowAll(); }
/// <summary> /// Default constructor that configures the Completion form. /// </summary> public EditorView(ViewBase owner) : base(owner) { scroller = new ScrolledWindow(); textEditor = new MonoTextEditor(); scroller.Add(textEditor); _mainWidget = scroller; Mono.TextEditor.TextEditorOptions options = new Mono.TextEditor.TextEditorOptions(); options.EnableSyntaxHighlighting = true; options.ColorScheme = "Visual Studio"; options.HighlightCaretLine = true; textEditor.Options = options; textEditor.TextArea.DoPopupMenu = DoPopup; textEditor.Document.LineChanged += OnTextHasChanged; textEditor.TextArea.FocusInEvent += OnTextBoxEnter; textEditor.TextArea.FocusOutEvent += OnTextBoxLeave; _mainWidget.Destroyed += _mainWidget_Destroyed; AddContextActionWithAccel("Cut", OnCut, "Ctrl+X"); AddContextActionWithAccel("Copy", OnCopy, "Ctrl+C"); AddContextActionWithAccel("Paste", OnPaste, "Ctrl+V"); AddContextActionWithAccel("Delete", OnDelete, "Delete"); AddContextSeparator(); AddContextActionWithAccel("Undo", OnUndo, "Ctrl+Z"); AddContextActionWithAccel("Redo", OnRedo, "Ctrl+Y"); AddContextActionWithAccel("Find", OnFind, "Ctrl+F"); AddContextActionWithAccel("Replace", OnReplace, "Ctrl+H"); CompletionForm = new Window(WindowType.Toplevel); CompletionForm.Decorated = false; CompletionForm.SkipPagerHint = true; CompletionForm.SkipTaskbarHint = true; Frame completionFrame = new Frame(); CompletionForm.Add(completionFrame); ScrolledWindow completionScroller = new ScrolledWindow(); completionFrame.Add(completionScroller); completionModel = new ListStore(typeof(Gdk.Pixbuf), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string)); CompletionView = new TreeView(completionModel); completionScroller.Add(CompletionView); TreeViewColumn column = new TreeViewColumn(); CellRendererPixbuf iconRender = new Gtk.CellRendererPixbuf(); column.PackStart(iconRender, false); CellRendererText textRender = new Gtk.CellRendererText(); textRender.Editable = false; column.PackStart(textRender, true); column.SetAttributes(iconRender, "pixbuf", 0); column.SetAttributes(textRender, "text", 1); column.Title = "Item"; column.Resizable = true; CompletionView.AppendColumn(column); textRender = new CellRendererText(); column = new TreeViewColumn("Units", textRender, "text", 2); column.Resizable = true; CompletionView.AppendColumn(column); textRender = new CellRendererText(); column = new TreeViewColumn("Type", textRender, "text", 3); column.Resizable = true; CompletionView.AppendColumn(column); textRender = new CellRendererText(); column = new TreeViewColumn("Descr", textRender, "text", 4); column.Resizable = true; CompletionView.AppendColumn(column); functionPixbuf = new Gdk.Pixbuf(null, "ApsimNG.Resources.Function.png", 16, 16); propertyPixbuf = new Gdk.Pixbuf(null, "ApsimNG.Resources.Property.png", 16, 16); textEditor.TextArea.KeyPressEvent += OnKeyPress; CompletionView.HasTooltip = true; CompletionView.TooltipColumn = 5; CompletionForm.FocusOutEvent += OnLeaveCompletion; CompletionView.ButtonPressEvent += OnContextListMouseDoubleClick; CompletionView.KeyPressEvent += OnContextListKeyDown; CompletionView.KeyReleaseEvent += CompletionView_KeyReleaseEvent; IntelliSenseChars = "."; }
public void UpdateChooser(string [] folders) { if (folders == null) { folders = Controller.Folders; } if (this.combo_box_wrapper != null && this.combo_box_wrapper.Parent != null) { this.layout_horizontal.Remove(this.combo_box_wrapper); this.combo_box_wrapper.Remove(this.combo_box); } this.combo_box_wrapper = new HBox(false, 0); this.combo_box = new ComboBox(); CellRendererText cell = new CellRendererText(); this.combo_box.PackStart(cell, false); this.combo_box.AddAttribute(cell, "text", 0); ListStore store = new ListStore(typeof(string)); store.AppendValues(_("Summary")); store.AppendValues("---"); this.combo_box.Model = store; this.combo_box.Active = 0; int row = 2; foreach (string folder in folders) { store.AppendValues(folder); if (folder.Equals(Controller.SelectedFolder)) { this.combo_box.Active = row; } row++; } this.combo_box.RowSeparatorFunc = delegate(TreeModel model, TreeIter iter) { string item = (string)this.combo_box.Model.GetValue(iter, 0); return(item == "---"); }; this.combo_box.Changed += delegate { TreeIter iter; this.combo_box.GetActiveIter(out iter); string selection = (string)this.combo_box.Model.GetValue(iter, 0); TreePath path = this.combo_box.Model.GetPath(iter); if (path.Indices [0] == 0) { Controller.SelectedFolder = null; } else { Controller.SelectedFolder = selection; } }; this.combo_box_wrapper.PackStart(new Label(" "), false, false, 9); this.combo_box_wrapper.PackStart(this.combo_box, true, true, 0); this.layout_horizontal.BorderWidth = 9; this.layout_horizontal.PackStart(this.combo_box_wrapper, true, true, 0); this.layout_horizontal.ShowAll(); }
public DeviceChooserDialog() { this.Build(); /* * var banner = new HeaderBanner () { * Text = GettextCatalog.GetString ("Select Device"), * Image = Gdk.Pixbuf.LoadFromResource ("banner.png"), * }; * bannerPlaceholder.Add (banner); * bannerPlaceholder.ShowAll ();*/ deviceListTreeView.Model = store; var txtRenderer = new CellRendererText(); deviceListTreeView.AppendColumn("Devices", txtRenderer, DeviceDataFunc); createEmulatorButton.Clicked += delegate { MonoDroidFramework.Toolbox.StartAvdManager(); }; startEmulatorButton.Clicked += delegate { TreeIter iter; if (deviceListTreeView.Selection.GetSelected(out iter)) { var dd = (DisplayDevice)store.GetValue(iter, 0); //status.StartOperation (GettextCatalog.GetString ("Starting virtual device '{0}'...", avd.Name)); if (dd.VirtualDevice != null) { MonoDroidFramework.VirtualDeviceManager.StartEmulator(dd.VirtualDevice); } } }; deviceListTreeView.Selection.Changed += UpdatedSelection; deviceListTreeView.RowActivated += delegate(object o, RowActivatedArgs args) { TreeIter iter; if (store.GetIter(out iter, args.Path)) { var dd = (DisplayDevice)store.GetValue(iter, 0); if (dd.Device != null) { Device = dd.Device; Respond(ResponseType.Ok); } } }; buttonOk.Sensitive = false; startEmulatorButton.Sensitive = false; MonoDroidFramework.DeviceManager.DevicesUpdated += OnDevicesUpdated; MonoDroidFramework.VirtualDeviceManager.Changed += OnVirtualDevicesUpdated; OnDevicesUpdated(null, EventArgs.Empty); restartAdbButton.Clicked += delegate { store.Clear(); restartAdbButton.Sensitive = false; MonoDroidFramework.DeviceManager.RestartAdbServer(() => { Gtk.Application.Invoke(delegate { if (!destroyed) { restartAdbButton.Sensitive = true; } }); }); }; isTrial = MonoDroidFramework.IsTrial; if (isTrial) { var ib = new MonoDevelop.Components.InfoBar(); var img = new Image(typeof(DeviceChooserDialog).Assembly, "information.png"); img.SetAlignment(0.5f, 0.5f); ib.PackEnd(img, false, false, 0); var msg = GettextCatalog.GetString("Trial version only supports the emulator"); ib.MessageArea.Add(new Gtk.Label(msg) { Yalign = 0.5f, Xalign = 0f, Style = ib.Style, }); string buyMessage; if (PropertyService.IsMac) { buyMessage = GettextCatalog.GetString("Buy Full Version"); } else { buyMessage = GettextCatalog.GetString("Activate"); } var buyButton = new Button(buyMessage); buyButton.Clicked += delegate { if (MonoDroidFramework.Activate()) { UnTrialify(); } }; ib.ActionArea.Add(buyButton); ib.ShowAll(); bannerPlaceholder.Add(ib); } }
public override void LaunchDialogue() { //the Type in the collection IList collection = (IList)Value; string displayName = Property.DisplayName; //populate list with existing items ListStore itemStore = new ListStore(typeof(object), typeof(int), typeof(string)); for (int i = 0; i < collection.Count; i++) { itemStore.AppendValues(collection [i], i, collection [i].ToString()); } #region Building Dialogue TreeView itemTree; PropertyGrid grid; TreeIter previousIter = TreeIter.Zero; //dialogue and buttons var dialog = new Gtk.Dialog() { Title = displayName + " Editor", Modal = true, AllowGrow = true, AllowShrink = true, }; IdeTheme.ApplyTheme(dialog); var toplevel = this.Container.GetNativeWidget <Gtk.Widget> ().Toplevel as Gtk.Window; if (toplevel != null) { dialog.TransientFor = toplevel; } dialog.AddActionWidget(new Button(Stock.Cancel), ResponseType.Cancel); dialog.AddActionWidget(new Button(Stock.Ok), ResponseType.Ok); //three columns for items, sorting, PropGrid HBox hBox = new HBox(); dialog.VBox.PackStart(hBox, true, true, 5); //propGrid at end grid = new PropertyGrid(base.EditorManager) { CurrentObject = null, WidthRequest = 200, ShowHelp = false }; hBox.PackEnd(grid, true, true, 5); //followed by a ButtonBox VBox buttonBox = new VBox(); buttonBox.Spacing = 6; hBox.PackEnd(buttonBox, false, false, 5); //add/remove buttons Button addButton = new Button(new ImageView(Stock.Add, IconSize.Button)); buttonBox.PackStart(addButton, false, false, 0); if (types [0].IsAbstract) { addButton.Sensitive = false; } Button removeButton = new Button(new ImageView(Stock.Remove, IconSize.Button)); buttonBox.PackStart(removeButton, false, false, 0); //sorting buttons Button upButton = new Button(new ImageView(Stock.GoUp, IconSize.Button)); buttonBox.PackStart(upButton, false, false, 0); Button downButton = new Button(new ImageView(Stock.GoDown, IconSize.Button)); buttonBox.PackStart(downButton, false, false, 0); //Third column has list (TreeView) in a ScrolledWindow ScrolledWindow listScroll = new ScrolledWindow(); listScroll.WidthRequest = 200; listScroll.HeightRequest = 320; hBox.PackStart(listScroll, false, false, 5); itemTree = new TreeView(itemStore); itemTree.Selection.Mode = SelectionMode.Single; itemTree.HeadersVisible = false; listScroll.AddWithViewport(itemTree); //renderers and attribs for TreeView CellRenderer rdr = new CellRendererText(); itemTree.AppendColumn(new TreeViewColumn("Index", rdr, "text", 1)); rdr = new CellRendererText(); itemTree.AppendColumn(new TreeViewColumn("Object", rdr, "text", 2)); #endregion #region Events addButton.Clicked += delegate { //create the object object instance = System.Activator.CreateInstance(types[0]); //get existing selection and insert after it TreeIter oldIter, newIter; if (itemTree.Selection.GetSelected(out oldIter)) { newIter = itemStore.InsertAfter(oldIter); } //or append if no previous selection else { newIter = itemStore.Append(); } itemStore.SetValue(newIter, 0, instance); //select, set name and update all the indices itemTree.Selection.SelectIter(newIter); UpdateName(itemStore, newIter); UpdateIndices(itemStore); }; removeButton.Clicked += delegate { //get selected iter and the replacement selection TreeIter iter, newSelection; if (!itemTree.Selection.GetSelected(out iter)) { return; } newSelection = iter; if (!IterPrev(itemStore, ref newSelection)) { newSelection = iter; if (!itemStore.IterNext(ref newSelection)) { newSelection = TreeIter.Zero; } } //new selection. Zeroing previousIter prevents trying to update name of deleted iter. previousIter = TreeIter.Zero; if (itemStore.IterIsValid(newSelection)) { itemTree.Selection.SelectIter(newSelection); } //and the removal and index update itemStore.Remove(ref iter); UpdateIndices(itemStore); }; upButton.Clicked += delegate { TreeIter iter, prev; if (!itemTree.Selection.GetSelected(out iter)) { return; } //get previous iter prev = iter; if (!IterPrev(itemStore, ref prev)) { return; } //swap the two itemStore.Swap(iter, prev); //swap indices too object prevVal = itemStore.GetValue(prev, 1); object iterVal = itemStore.GetValue(iter, 1); itemStore.SetValue(prev, 1, iterVal); itemStore.SetValue(iter, 1, prevVal); }; downButton.Clicked += delegate { TreeIter iter, next; if (!itemTree.Selection.GetSelected(out iter)) { return; } //get next iter next = iter; if (!itemStore.IterNext(ref next)) { return; } //swap the two itemStore.Swap(iter, next); //swap indices too object nextVal = itemStore.GetValue(next, 1); object iterVal = itemStore.GetValue(iter, 1); itemStore.SetValue(next, 1, iterVal); itemStore.SetValue(iter, 1, nextVal); }; itemTree.Selection.Changed += delegate { TreeIter iter; if (!itemTree.Selection.GetSelected(out iter)) { removeButton.Sensitive = false; return; } removeButton.Sensitive = true; //update grid object obj = itemStore.GetValue(iter, 0); grid.CurrentObject = obj; //update previously selected iter's name UpdateName(itemStore, previousIter); //update current selection so we can update //name next selection change previousIter = iter; }; grid.Changed += delegate { TreeIter iter; if (itemTree.Selection.GetSelected(out iter)) { UpdateName(itemStore, iter); } }; TreeIter selectionIter; removeButton.Sensitive = itemTree.Selection.GetSelected(out selectionIter); dialog.ShowAll(); grid.ShowToolbar = false; #endregion //if 'OK' put items back in collection using (dialog) { if (MonoDevelop.Ide.MessageService.ShowCustomDialog(dialog, toplevel) == (int)ResponseType.Ok) { DesignerTransaction tran = CreateTransaction(Instance); object old = collection; try { collection.Clear(); foreach (object[] o in itemStore) { collection.Add(o [0]); } EndTransaction(Instance, tran, old, collection, true); } catch { EndTransaction(Instance, tran, old, collection, false); throw; } } } }
void crea_treeview_ordendecompra() { treeViewEngineordendecompra = new ListStore(typeof(bool), //0 typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(string)); lista_almacenes.Model = treeViewEngineordendecompra; lista_almacenes.RulesHint = true; TreeViewColumn col_seleccion = new TreeViewColumn(); CellRendererToggle cellr0 = new CellRendererToggle(); col_seleccion.Title = "Seleccion"; col_seleccion.PackStart(cellr0, true); col_seleccion.AddAttribute(cellr0, "active", 0); cellr0.Activatable = true; cellr0.Toggled += selecciona_fila_grupo; col_seleccion.SortColumnId = (int)col_ordencompra.col_seleccion; TreeViewColumn col_nro_oc = new TreeViewColumn(); CellRendererText cellr1 = new CellRendererText(); col_nro_oc.Title = "N° O.C."; col_nro_oc.PackStart(cellr1, true); col_nro_oc.AddAttribute(cellr1, "text", 1); cellr1.Foreground = "darkblue"; col_nro_oc.SortColumnId = (int)col_ordencompra.col_nro_oc; TreeViewColumn col_sub = new TreeViewColumn(); CellRendererText cellr2 = new CellRendererText(); col_sub.Title = "Fecha O.C."; col_sub.PackStart(cellr2, true); col_sub.AddAttribute(cellr2, "text", 2); cellr2.Foreground = "darkblue"; col_sub.SortColumnId = (int)col_ordencompra.col_sub; TreeViewColumn col_fecha_envio = new TreeViewColumn(); CellRendererText cellr3 = new CellRendererText(); col_fecha_envio.Title = "ID Proveedor"; col_fecha_envio.PackStart(cellr3, true); col_fecha_envio.AddAttribute(cellr3, "text", 3); cellr3.Foreground = "darkblue"; col_fecha_envio.SortColumnId = (int)col_ordencompra.col_fecha_envio; TreeViewColumn col_id_sol = new TreeViewColumn(); CellRendererText cellr4 = new CellRendererText(); col_id_sol.Title = "Nombre Proveedor"; col_id_sol.PackStart(cellr4, true); col_id_sol.AddAttribute(cellr4, "text", 4); cellr4.Foreground = "darkblue"; col_id_sol.SortColumnId = (int)col_ordencompra.col_id_sol; TreeViewColumn col_numeroatencion = new TreeViewColumn(); CellRendererText cellr6 = new CellRendererText(); col_numeroatencion.Title = "N° Atencion"; // titulo de la cabecera de la columna, si está visible col_numeroatencion.PackStart(cellr6, true); col_numeroatencion.AddAttribute(cellr6, "text", 6); cellr6.Foreground = "darkblue"; col_numeroatencion.SortColumnId = (int)col_ordencompra.col_numeroatencion; TreeViewColumn col_pidpaciente = new TreeViewColumn(); CellRendererText cellr7 = new CellRendererText(); col_pidpaciente.Title = "Codigo"; // titulo de la cabecera de la columna, si está visible col_pidpaciente.PackStart(cellr7, true); col_pidpaciente.AddAttribute(cellr7, "text", 7); cellr7.Foreground = "darkblue"; col_pidpaciente.SortColumnId = (int)col_ordencompra.col_pidpaciente; TreeViewColumn col_nombrepaciente = new TreeViewColumn(); CellRendererText cellr8 = new CellRendererText(); col_nombrepaciente.Title = "Nombre Proveedor"; // titulo de la cabecera de la columna, si está visible col_nombrepaciente.PackStart(cellr8, true); col_nombrepaciente.AddAttribute(cellr8, "text", 8); cellr8.Foreground = "darkblue"; col_nombrepaciente.SortColumnId = (int)col_ordencompra.col_nombrepaciente; lista_almacenes.AppendColumn(col_seleccion); lista_almacenes.AppendColumn(col_nro_oc); lista_almacenes.AppendColumn(col_sub); lista_almacenes.AppendColumn(col_fecha_envio); lista_almacenes.AppendColumn(col_id_sol); lista_almacenes.AppendColumn(col_numeroatencion); lista_almacenes.AppendColumn(col_pidpaciente); lista_almacenes.AppendColumn(col_nombrepaciente); }
private void BuildInterface() { Gui.Initialize(this); Name = "ProjectWindow"; Title = "Projects"; WindowPosition = WindowPosition.Center; Icon = new Pixbuf(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, !ApplicationHelper.IsUnix ? @"Content\img\todo.png": @"Content/img/todo.png")); var uiManager = new UIManager(); var actionGrp = new ActionGroup("Default"); var mainMenu = new MenuBar { Name = "mainMenu" }; var fileMenu = new Menu(); var fileMenuItem = new MenuItem("_File") { Name = "fileMenuItem", Submenu = fileMenu }; #region Menubar items var fileNewMenuItem = new MenuItem("_New"); fileNewMenuItem.Activated += FileNewMenuItem_OnActivated; fileMenu.Append(fileNewMenuItem); var fileOpenMenuItem = new MenuItem("_Open"); fileOpenMenuItem.Activated += OpenActionOnActivated; fileMenu.Append(fileOpenMenuItem); var fileSaveMenuItem = new MenuItem("_Save"); fileMenu.Append(fileSaveMenuItem); fileSaveMenuItem.Activated += SaveItem_OnActivated; var hsepfilemenu = new SeparatorMenuItem { Name = "FileMenuSeparator" }; fileMenu.Append(hsepfilemenu); var fileExitMenuItem = new MenuItem("_Exit"); fileExitMenuItem.Activated += fileExitMenuItem_Clicked; fileMenu.Append(fileExitMenuItem); var windowPane = new HPaned(); mainMenu.Append(fileMenuItem); _addCategoryAction = new Action("addCategoryAction", "New _Category", "Add a new category", "CircledPlus"); _addCategoryAction.Activated += AddCategory_Clicked; actionGrp.Add(_addCategoryAction, null); _removeCategoryAction = new Action("removeCategoryAction", "_Remove Category", "Remove the selected category", "CircledMinus"); _removeCategoryAction.Activated += DeleteCategory_Clicked; actionGrp.Add(_removeCategoryAction, null); _addTaskItemAction = new Action("addTaskItemAction", "New _Task", "Add a new task", "CircledPlus"); _addTaskItemAction.Activated += AddTaskItem_Clicked; actionGrp.Add(_addTaskItemAction, null); _modifyTaskItemAction = new Action("modifyTaskItemAction", "Modify_Task", "Modify task", "CircledPlus"); _modifyTaskItemAction.Activated += ModifyTaskItemActionOnActivated; actionGrp.Add(_modifyTaskItemAction, null); _removeTaskItemAction = new Action("removeTaskItemAction", "Remove Task", "Removes the selected task", "CircledMinus"); _removeTaskItemAction.Activated += DeleteTaskItem_Clicked; actionGrp.Add(_removeTaskItemAction, null); uiManager.InsertActionGroup(actionGrp, 0); AddAccelGroup(uiManager.AccelGroup); #endregion var windowContainer = new VBox { Name = "mainWindowContainer", Spacing = 3 }; _categorySidebar = new VBox { Name = "categorySidebar", Spacing = 6, ResizeMode = ResizeMode.Parent, WidthRequest = 210 }; uiManager.AddUiFromString( "<ui>" + "<toolbar name='categoryToolbar'>" + "<toolitem name='addCategoryAction' action='addCategoryAction'/>" + "<toolitem name='removeCategoryAction' action='removeCategoryAction'/>" + "</toolbar>" + "</ui>"); _categoryToolbar = (Toolbar)uiManager.GetWidget("/categoryToolbar"); _categoryToolbar.Events = (EventMask)8992; _categoryToolbar.Name = "catToolbar"; _categoryToolbar.ShowArrow = false; var calendarExpander = new Expander(null) { CanFocus = true, Name = "CategoryExpander", Expanded = true }; _calendar = new Calendar { CanFocus = true, Name = "calendar", DisplayOptions = (CalendarDisplayOptions)35 }; _calendar.MonthChanged += Calendar_MonthChanged; calendarExpander.Add(_calendar); var calendarExpanderLabel = new Label { Name = "CalendarExpanderLabel", LabelProp = "Calendar", UseUnderline = true }; calendarExpander.LabelWidget = calendarExpanderLabel; var categoryExpander = new Expander(null) { CanFocus = true, Name = "CategoryExpander", Expanded = true }; var categoryExpanderContainer = new VBox { Name = "categoryExpanderContainer", Spacing = 3 }; var categoryPane = new VPaned(); var categoryContainer = new ScrolledWindow { Name = "CategoryContainer", ShadowType = ShadowType.None, HscrollbarPolicy = PolicyType.Automatic, VscrollbarPolicy = PolicyType.Automatic }; categoryContainer.HScrollbar.Visible = true; categoryContainer.VScrollbar.Visible = true; var categoryContainerLabel = new Label { Name = "CategoryContainerLabel" }; var categoryDescriptionScroll = new ScrolledWindow { Name = "categoryDescriptionScroll", ShadowType = (ShadowType)1, VscrollbarPolicy = PolicyType.Automatic, HscrollbarPolicy = PolicyType.Automatic }; var descriptionHBox = new VBox { Name = "descriptionHBox", HasWindow = false }; var descriptionFixed = new Fixed { Name = "descriptionFixed", HasWindow = false }; _categoryDescriptionLabel = new Label { Name = "categoryDescriptionLabel", Text = "Description" }; _categoryDescription = new TextView { Name = "categoryDescription", BorderWidth = 2, Editable = false, WrapMode = WrapMode.WordChar, HscrollPolicy = ScrollablePolicy.Natural, Buffer = { Text = "No category selected\n\rDouble click a category to show its description." } }; var noteBookContainer = new VBox { Name = "NotebookContainer", Spacing = 3, Margin = 5 }; _noteBook = new Notebook { Scrollable = true }; noteBookContainer.Add(_noteBook); var noteBookContainerChild = (Box.BoxChild)noteBookContainer[_noteBook]; noteBookContainerChild.Expand = true; noteBookContainerChild.Fill = true; var taskViewContainer = new VBox { Name = "TaskTableListContainer", Spacing = 3 }; uiManager.AddUiFromString( "<ui>" + "<toolbar name='taskToolbar'>" + "<toolitem name='addTaskItemAction' action='addTaskItemAction'/>" + "<toolitem name='modifyTaskItemAction' action='modifyTaskItemAction'/>" + "<toolitem name='removeTaskItemAction' action='removeTaskItemAction'/>" + "</toolbar>" + "</ui>"); var taskToolbar = (Toolbar)uiManager.GetWidget("/taskToolbar"); taskToolbar.Events = (EventMask)8992; taskToolbar.Name = "taskToolbar"; taskToolbar.ShowArrow = false; var recordsWindow = new ScrolledWindow { Name = "recordsWindow", ShadowType = (ShadowType)1, VscrollbarPolicy = PolicyType.Automatic, HscrollbarPolicy = PolicyType.Automatic }; #region Category table properties _categoryTreeView = new TreeView(); _categoryItemId = new TreeViewColumn { Title = "ID", Resizable = true, Visible = false }; var categoryIdCell = new CellRendererText(); _categoryItemId.PackStart(categoryIdCell, false); _categoryItemId.SetCellDataFunc(categoryIdCell, RenderCategoryId); _categoryItemName = new TreeViewColumn { Title = "Category", Resizable = true }; var categoryNameCell = new CellRendererText(); _categoryItemName.PackStart(categoryNameCell, false); _categoryItemName.SetCellDataFunc(categoryNameCell, RenderCategoryName); categoryNameCell.Edited += CategoryItemNameCell_Edited; _categoryItemToggle = new TreeViewColumn { Title = "Show", Resizable = true }; var categoryToggleCell = new CellRendererToggle(); _categoryItemToggle.PackStart(categoryToggleCell, false); _categoryItemToggle.SetCellDataFunc(categoryToggleCell, RenderCategoryToggle); categoryToggleCell.Toggled += CategoryItem_Toggled; _categoryStore = new ListStore(typeof(Category)); _categoryTreeView.Model = _categoryStore; _categoryTreeView.AppendColumn(_categoryItemId); _categoryTreeView.AppendColumn(_categoryItemName); _categoryTreeView.AppendColumn(_categoryItemToggle); _categoryTreeView.RowActivated += CategoryTreeView_RowActivated; #endregion categoryTable_properties #region MainView properties _mainView = new TreeView(); _taskId = new TreeViewColumn { Title = "ID", Resizable = true, #if !DEBUG Visible = false #endif #if DEBUG Visible = true #endif }; var taslIdCell = new CellRendererText(); _taskId.PackStart(taslIdCell, false); _taskId.SetCellDataFunc(taslIdCell, RenderTaskItemId); _taskName = new TreeViewColumn { Title = "Title", Resizable = true }; var taskNameCell = new CellRendererText(); _taskName.PackStart(taskNameCell, false); _taskName.SetCellDataFunc(taskNameCell, RenderTaskItemName); _taskCategory = new TreeViewColumn { Title = "Category", Resizable = true }; var taskCategoryCell = new CellRendererText(); _taskCategory.PackStart(taskCategoryCell, false); _taskCategory.SetCellDataFunc(taskCategoryCell, RenderTaskItemCategory); _taskPriority = new TreeViewColumn { Title = "Priority", Resizable = true }; var taskPriorityCell = new CellRendererText(); _taskPriority.PackStart(taskPriorityCell, false); _taskPriority.SetCellDataFunc(taskPriorityCell, RenderTaskItemPriority); _taskStartDate = new TreeViewColumn { Title = "Start Date", Resizable = true }; var taskStartCell = new CellRendererText(); _taskStartDate.PackStart(taskStartCell, false); _taskStartDate.SetCellDataFunc(taskStartCell, RenderTaskItemStart); _taskDueDate = new TreeViewColumn { Title = "Due Date", Resizable = true }; var taskDueCell = new CellRendererText(); _taskDueDate.PackStart(taskDueCell, true); _taskDueDate.SetCellDataFunc(taskDueCell, RenderTaskItemFinish); _taskStore = new ListStore(typeof(Activity)); _mainView.Model = _taskStore; _mainView.AppendColumn(_taskId); _mainView.AppendColumn(_taskName); _mainView.AppendColumn(_taskCategory); _mainView.AppendColumn(_taskPriority); _mainView.AppendColumn(_taskStartDate); _mainView.AppendColumn(_taskDueDate); #endregion _fileActionProgBar = new ProgressBar { Name = "fileActionProgBar", Visible = false }; windowContainer.Add(mainMenu); var menuChild = (Box.BoxChild)windowContainer[mainMenu]; menuChild.Fill = false; menuChild.Expand = false; _categorySidebar.Add(calendarExpander); var sidebarChild = (Box.BoxChild)_categorySidebar[calendarExpander]; sidebarChild.Position = 0; sidebarChild.Expand = false; sidebarChild.Fill = false; categoryExpanderContainer.Add(_categoryToolbar); categoryExpanderContainer.Add(_categoryTreeView); var toolbarChild = (Box.BoxChild)categoryExpanderContainer[_categoryToolbar]; toolbarChild.Expand = false; toolbarChild.Fill = false; categoryPane.Add(categoryContainer); categoryPane.Expand = true; var paneContainerChild = (Paned.PanedChild)categoryPane[categoryContainer]; paneContainerChild.Resize = true; categoryContainer.AddWithViewport(categoryExpanderContainer); categoryContainerLabel.LabelProp = "Categories"; categoryContainerLabel.UseUnderline = true; categoryExpander.LabelWidget = categoryContainerLabel; categoryPane.Add(descriptionHBox); var descriptionContainerChild = (Paned.PanedChild)categoryPane[descriptionHBox]; descriptionContainerChild.Resize = true; categoryExpander.Add(categoryPane); descriptionHBox.Add(descriptionFixed); var descriptionFixedChild = (Box.BoxChild)descriptionHBox[descriptionFixed]; descriptionFixedChild.Expand = false; descriptionFixedChild.Padding = 5; descriptionFixed.Add(_categoryDescriptionLabel); var descriptionLabelChild = (Fixed.FixedChild)descriptionFixed[_categoryDescriptionLabel]; descriptionLabelChild.X = 5; descriptionLabelChild.Y = 0; descriptionHBox.Add(categoryDescriptionScroll); var descriptionViewChild = (Box.BoxChild)descriptionHBox[categoryDescriptionScroll]; descriptionViewChild.Expand = true; categoryDescriptionScroll.Add(_categoryDescription); categoryDescriptionScroll.AddWithViewport(_categoryDescription); _categorySidebar.Add(categoryExpander); var sidebarchild = (Box.BoxChild)_categorySidebar[categoryExpander]; sidebarchild.Position = 1; windowPane.Add(_categorySidebar); taskViewContainer.Add(taskToolbar); var taskbarChild = (Box.BoxChild)taskViewContainer[taskToolbar]; taskbarChild.Fill = false; taskbarChild.Expand = false; recordsWindow.Add(_mainView); recordsWindow.AddWithViewport(_mainView); taskViewContainer.Add(recordsWindow); taskViewContainer.Add(_fileActionProgBar); var barChild = (Box.BoxChild)taskViewContainer[_fileActionProgBar]; barChild.Expand = false; barChild.Fill = false; _noteBook.AppendPage(taskViewContainer, new Label("Task List")); var taskContainerNoteBookContainer = (Notebook.NotebookChild)_noteBook[taskViewContainer]; taskContainerNoteBookContainer.TabFill = true; taskContainerNoteBookContainer.Detachable = false; windowPane.Add(noteBookContainer); windowContainer.Add(windowPane); Add(windowContainer); SetSizeRequest(800, 600); DestroyEvent += ProjectWindow_DestroyEvent; DeleteEvent += OnDeleteEvent; ShowAll(); _fileActionProgBar.Visible = false; } }
public override void Initialize(NodeBuilder[] builders, TreePadOption[] options, string menuPath) { base.Initialize(builders, options, menuPath); testChangedHandler = (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnDetailsTestChanged)); testService.TestSuiteChanged += (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnTestSuiteChanged)); paned = new VPaned(); VBox vbox = new VBox(); DockItemToolbar topToolbar = Window.GetToolbar(PositionType.Top); buttonRunAll = new Button(new Gtk.Image(Gtk.Stock.GoUp, IconSize.Menu)); buttonRunAll.Clicked += new EventHandler(OnRunAllClicked); buttonRunAll.Sensitive = true; buttonRunAll.TooltipText = GettextCatalog.GetString("Run all tests"); topToolbar.Add(buttonRunAll); buttonRun = new Button(new Gtk.Image(Gtk.Stock.Execute, IconSize.Menu)); buttonRun.Clicked += new EventHandler(OnRunClicked); buttonRun.Sensitive = true; buttonRun.TooltipText = GettextCatalog.GetString("Run test"); topToolbar.Add(buttonRun); buttonStop = new Button(new Gtk.Image(Gtk.Stock.Stop, IconSize.Menu)); buttonStop.Clicked += new EventHandler(OnStopClicked); buttonStop.Sensitive = false; buttonStop.TooltipText = GettextCatalog.GetString("Cancel running test"); topToolbar.Add(buttonStop); topToolbar.ShowAll(); vbox.PackEnd(base.Control, true, true, 0); vbox.FocusChain = new Gtk.Widget [] { base.Control }; paned.Pack1(vbox, true, true); detailsPad = new VBox(); EventBox eb = new EventBox(); HBox header = new HBox(); eb.Add(header); detailLabel = new HeaderLabel(); detailLabel.Padding = 6; Button hb = new Button(new Gtk.Image("gtk-close", IconSize.SmallToolbar)); hb.Relief = ReliefStyle.None; hb.Clicked += new EventHandler(OnCloseDetails); header.PackEnd(hb, false, false, 0); hb = new Button(new Gtk.Image("gtk-go-back", IconSize.SmallToolbar)); hb.Relief = ReliefStyle.None; hb.Clicked += new EventHandler(OnGoBackTest); header.PackEnd(hb, false, false, 0); header.Add(detailLabel); Gdk.Color hcol = eb.Style.Background(StateType.Normal); hcol.Red = (ushort)(((double)hcol.Red) * 0.9); hcol.Green = (ushort)(((double)hcol.Green) * 0.9); hcol.Blue = (ushort)(((double)hcol.Blue) * 0.9); // eb.ModifyBg (StateType.Normal, hcol); detailsPad.PackStart(eb, false, false, 0); VPaned panedDetails = new VPaned(); panedDetails.BorderWidth = 3; VBox boxPaned1 = new VBox(); chart = new TestChart(); chart.ButtonReleaseEvent += new Gtk.ButtonReleaseEventHandler(OnChartPopupMenu); chart.SelectionChanged += new EventHandler(OnChartDateChanged); chart.HeightRequest = 50; Toolbar toolbar = new Toolbar(); toolbar.IconSize = IconSize.SmallToolbar; toolbar.ToolbarStyle = ToolbarStyle.Icons; toolbar.ShowArrow = false; ToolButton but = new ToolButton("gtk-zoom-in"); but.Clicked += new EventHandler(OnZoomIn); toolbar.Insert(but, -1); but = new ToolButton("gtk-zoom-out"); but.Clicked += new EventHandler(OnZoomOut); toolbar.Insert(but, -1); but = new ToolButton("gtk-go-back"); but.Clicked += new EventHandler(OnChartBack); toolbar.Insert(but, -1); but = new ToolButton("gtk-go-forward"); but.Clicked += new EventHandler(OnChartForward); toolbar.Insert(but, -1); but = new ToolButton("gtk-goto-last"); but.Clicked += new EventHandler(OnChartLast); toolbar.Insert(but, -1); boxPaned1.PackStart(toolbar, false, false, 0); boxPaned1.PackStart(chart, true, true, 0); panedDetails.Pack1(boxPaned1, false, false); // Detailed test information -------- infoBook = new ButtonNotebook(); infoBook.PageLoadRequired += new EventHandler(OnPageLoadRequired); // Info - Group summary Frame tf = new Frame(); ScrolledWindow sw = new ScrolledWindow(); detailsTree = new TreeView(); detailsTree.HeadersVisible = true; detailsTree.RulesHint = true; detailsStore = new ListStore(typeof(object), typeof(string), typeof(string), typeof(string), typeof(string)); CellRendererText trtest = new CellRendererText(); CellRendererText tr; TreeViewColumn col3 = new TreeViewColumn(); col3.Expand = false; // col3.Alignment = 0.5f; col3.Widget = new Gtk.Image(CircleImage.Success); col3.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col3.PackStart(tr, false); col3.AddAttribute(tr, "markup", 2); detailsTree.AppendColumn(col3); TreeViewColumn col4 = new TreeViewColumn(); col4.Expand = false; // col4.Alignment = 0.5f; col4.Widget = new Gtk.Image(CircleImage.Failure); col4.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col4.PackStart(tr, false); col4.AddAttribute(tr, "markup", 3); detailsTree.AppendColumn(col4); TreeViewColumn col5 = new TreeViewColumn(); col5.Expand = false; // col5.Alignment = 0.5f; col5.Widget = new Gtk.Image(CircleImage.NotRun); col5.Widget.Show(); tr = new CellRendererText(); // tr.Xalign = 0.5f; col5.PackStart(tr, false); col5.AddAttribute(tr, "markup", 4); detailsTree.AppendColumn(col5); TreeViewColumn col1 = new TreeViewColumn(); // col1.Resizable = true; // col1.Expand = true; col1.Title = "Test"; col1.PackStart(trtest, true); col1.AddAttribute(trtest, "markup", 1); detailsTree.AppendColumn(col1); detailsTree.Model = detailsStore; sw.Add(detailsTree); tf.Add(sw); tf.ShowAll(); TestSummaryPage = infoBook.AddPage(GettextCatalog.GetString("Summary"), tf); // Info - Regressions list tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); regressionTree = new TreeView(); regressionTree.HeadersVisible = false; regressionTree.RulesHint = true; regressionStore = new ListStore(typeof(object), typeof(string), typeof(Pixbuf)); CellRendererText trtest2 = new CellRendererText(); var pr = new CellRendererPixbuf(); TreeViewColumn col = new TreeViewColumn(); col.PackStart(pr, false); col.AddAttribute(pr, "pixbuf", 2); col.PackStart(trtest2, false); col.AddAttribute(trtest2, "markup", 1); regressionTree.AppendColumn(col); regressionTree.Model = regressionStore; sw.Add(regressionTree); tf.ShowAll(); TestRegressionsPage = infoBook.AddPage(GettextCatalog.GetString("Regressions"), tf); // Info - Failed tests list tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); failedTree = new TreeView(); failedTree.HeadersVisible = false; failedTree.RulesHint = true; failedStore = new ListStore(typeof(object), typeof(string), typeof(Pixbuf)); trtest2 = new CellRendererText(); pr = new CellRendererPixbuf(); col = new TreeViewColumn(); col.PackStart(pr, false); col.AddAttribute(pr, "pixbuf", 2); col.PackStart(trtest2, false); col.AddAttribute(trtest2, "markup", 1); failedTree.AppendColumn(col); failedTree.Model = failedStore; sw.Add(failedTree); tf.ShowAll(); TestFailuresPage = infoBook.AddPage(GettextCatalog.GetString("Failed tests"), tf); // Info - results tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); resultView = new TextView(); resultView.Editable = false; sw.Add(resultView); tf.ShowAll(); TestResultPage = infoBook.AddPage(GettextCatalog.GetString("Result"), tf); // Info - Output tf = new Frame(); sw = new ScrolledWindow(); tf.Add(sw); outputView = new TextView(); outputView.Editable = false; sw.Add(outputView); tf.ShowAll(); TestOutputPage = infoBook.AddPage(GettextCatalog.GetString("Output"), tf); panedDetails.Pack2(infoBook, true, true); detailsPad.PackStart(panedDetails, true, true, 0); paned.Pack2(detailsPad, true, true); paned.ShowAll(); infoBook.HidePage(TestResultPage); infoBook.HidePage(TestOutputPage); infoBook.HidePage(TestSummaryPage); infoBook.HidePage(TestRegressionsPage); infoBook.HidePage(TestFailuresPage); detailsPad.Sensitive = false; detailsPad.Hide(); detailsTree.RowActivated += new Gtk.RowActivatedHandler(OnTestActivated); regressionTree.RowActivated += new Gtk.RowActivatedHandler(OnRegressionTestActivated); failedTree.RowActivated += new Gtk.RowActivatedHandler(OnFailedTestActivated); foreach (UnitTest t in testService.RootTests) { TreeView.AddChild(t); } }
public DirtyFilesDialog() : base(GettextCatalog.GetString("Save Files"), IdeApp.Workbench.RootWindow, DialogFlags.Modal) { tsFiles = new TreeStore(typeof(string), typeof(bool), typeof(SdiWorkspaceWindow), typeof(bool)); tvFiles = new TreeView(tsFiles); TreeIter topCombineIter = TreeIter.Zero; Hashtable projectIters = new Hashtable(); foreach (Document doc in IdeApp.Workbench.Documents) { if (!doc.IsDirty) { continue; } IViewContent viewcontent = doc.Window.ViewContent; if (viewcontent.Project != null) { TreeIter projIter = TreeIter.Zero; if (projectIters.ContainsKey(viewcontent.Project)) { projIter = (TreeIter)projectIters[viewcontent.Project]; } else { if (topCombineIter.Equals(TreeIter.Zero)) { projIter = tsFiles.AppendValues(GettextCatalog.GetString("Project: {0}", viewcontent.Project.Name), true, null, false); } else { projIter = tsFiles.AppendValues(topCombineIter, GettextCatalog.GetString("Project: {0}", viewcontent.Project.Name), true, null, false); } projectIters[viewcontent.Project] = projIter; } tsFiles.AppendValues(projIter, viewcontent.PathRelativeToProject, true, viewcontent.WorkbenchWindow); } else { if (viewcontent.ContentName == null) { viewcontent.ContentName = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), viewcontent.UntitledName); } tsFiles.AppendValues(viewcontent.ContentName, true, viewcontent.WorkbenchWindow); } } if (!topCombineIter.Equals(TreeIter.Zero)) { if (!tsFiles.IterHasChild(topCombineIter)) { tsFiles.Remove(ref topCombineIter); } } TreeViewColumn mainColumn = new TreeViewColumn(); mainColumn.Title = "header"; togRender = new CellRendererToggle(); togRender.Toggled += toggled; mainColumn.PackStart(togRender, false); mainColumn.AddAttribute(togRender, "active", 1); mainColumn.AddAttribute(togRender, "inconsistent", 3); textRender = new CellRendererText(); mainColumn.PackStart(textRender, true); mainColumn.AddAttribute(textRender, "text", 0); tvFiles.AppendColumn(mainColumn); tvFiles.HeadersVisible = false; tvFiles.ExpandAll(); ScrolledWindow sc = new ScrolledWindow(); sc.Add(tvFiles); sc.ShadowType = ShadowType.In; sc.BorderWidth = 6; this.VBox.PackStart(sc, true, true, 6); btnSaveAndQuit = new Button(GettextCatalog.GetString("_Save and Quit")); btnQuit = new Button(Gtk.Stock.Quit); btnCancel = new Button(Gtk.Stock.Cancel); btnSaveAndQuit.Clicked += SaveAndQuit; btnQuit.Clicked += Quit; btnCancel.Clicked += Cancel; this.ActionArea.PackStart(btnCancel); this.ActionArea.PackStart(btnQuit); this.ActionArea.PackStart(btnSaveAndQuit); this.SetDefaultSize(300, 200); this.ShowAll(); }
public GtkCertificateViewer(string filename) { Application.Init(); Glade.XML gxml = new Glade.XML(null, "certview.glade", "CertificateViewer", null); gxml.Autoconnect(this); cf = new CertificateFormatter(filename); // init UI brokenSealImage.Pixbuf = new Pixbuf(null, "wax-seal-broken.png"); sealImage.Pixbuf = new Pixbuf(null, "wax-seal.png"); Tooltips tt = new Tooltips(); issuedToEntry.Text = cf.Issuer(false); tt.SetTip(issuedToEntry, issuedToEntry.Text, issuedToEntry.Text); issuedByEntry.Text = cf.Subject(false); tt.SetTip(issuedByEntry, issuedByEntry.Text, issuedByEntry.Text); subjectAltNameLabel.Text = cf.SubjectAltName(false); subjectAltNameLabel.Visible = (subjectAltNameLabel.Text != null); notBeforeEntry.Text = cf.Certificate.ValidFrom.ToString("yyyy-MM-dd"); notAfterEntry.Text = cf.Certificate.ValidUntil.ToString("yyyy-MM-dd"); TextBuffer tb = new TextBuffer(null); if (cf.Status != null) { tb.SetText(cf.Status); } certStatusTextview.Buffer = tb; if (cf.Status != null) { certInfoTextview.Buffer = tb; certInfoTextview.ModifyText(StateType.Normal, new Gdk.Color(0xff, 0x00, 0x00)); } sealImage.Visible = (cf.Status == null); brokenSealImage.Visible = !sealImage.Visible; Type[] storeType = new Type [4] { typeof(string), typeof(string), typeof(string), typeof(int) }; allStore = new ListStore(storeType); v1Store = new ListStore(storeType); extensionsStore = new ListStore(storeType); criticalStore = new ListStore(storeType); propertiesStore = new ListStore(storeType); emptyStore = new ListStore(storeType); AddToStores(CertificateFormatter.FieldNames.Version, cf.Version(false), cf.Version(true), 1); AddToStores(CertificateFormatter.FieldNames.SerialNumber, cf.SerialNumber(false), cf.SerialNumber(true), 0); AddToStores(CertificateFormatter.FieldNames.SignatureAlgorithm, cf.SignatureAlgorithm(false), cf.SignatureAlgorithm(true), 0); AddToStores(CertificateFormatter.FieldNames.Issuer, cf.Issuer(false), cf.Issuer(true), 0); AddToStores(CertificateFormatter.FieldNames.ValidFrom, cf.ValidFrom(false), cf.ValidFrom(true), 0); AddToStores(CertificateFormatter.FieldNames.ValidUntil, cf.ValidUntil(false), cf.ValidUntil(true), 0); AddToStores(CertificateFormatter.FieldNames.Subject, cf.Subject(false), cf.Subject(true), 0); AddToStores(CertificateFormatter.FieldNames.PublicKey, cf.PublicKey(false), cf.PublicKey(true), 0); for (int i = 0; i < cf.Certificate.Extensions.Count; i++) { X509Extension xe = cf.GetExtension(i); string name = xe.Name; int icon = 2; if (xe.Critical) { icon = 3; } string exts = xe.ToString(); string details; if (xe.Name == xe.Oid) { exts = cf.Extension(i, false); details = cf.Extension(i, true); } else { details = xe.ToString(); exts = CertificateFormatter.OneLine(details); } AddToStores(name, exts, details, icon); } AddToStores(CertificateFormatter.PropertyNames.ThumbprintAlgorithm, cf.ThumbprintAlgorithm, cf.ThumbprintAlgorithm, 4); string ftb = CertificateFormatter.Array2Word(cf.Thumbprint); AddToStores(CertificateFormatter.PropertyNames.Thumbprint, ftb, ftb, 4); // select appropriate store to show OnShowComboChanged(null, null); TreeViewColumn fieldColumn = new TreeViewColumn(); CellRendererPixbuf pr = new CellRendererPixbuf(); CellRenderer fieldRenderer = new CellRendererText(); fieldColumn.PackStart(pr, false); fieldColumn.SetCellDataFunc(pr, CellDataFunc, IntPtr.Zero, null); fieldColumn.Title = "Field"; fieldColumn.PackStart(fieldRenderer, false); fieldColumn.AddAttribute(fieldRenderer, "text", 0); detailsTreeview.AppendColumn(fieldColumn); TreeViewColumn valueColumn = new TreeViewColumn(); CellRenderer valueRenderer = new CellRendererText(); valueColumn.Title = "Value"; valueColumn.PackStart(valueRenderer, true); valueColumn.AddAttribute(valueRenderer, "text", 1); detailsTreeview.AppendColumn(valueColumn); // detailsTreeview.ModifyText (StateType.Selected, new Gdk.Color (0x33, 0xff, 0x33)); Application.Run(); }
public AddinManagerDialog(Window parent, SetupService service) { this.service = service; Build(); TransientFor = parent; HasSeparator = false; Services.PlaceDialog(this, parent); addininfoInstalled.Init(service); addininfoGallery.Init(service); addinTree.Selection.Mode = SelectionMode.Multiple; tree = new AddinTreeWidget(addinTree); addinTree.Selection.Changed += OnSelectionChanged; tree.VersionVisible = false; galleryTreeView.Selection.Mode = SelectionMode.Multiple; galleryTree = new AddinTreeWidget(galleryTreeView); galleryTree.VersionVisible = false; galleryTree.ShowInstalledMarkers = true; galleryTreeView.Selection.Changed += OnGallerySelectionChanged; updatesTreeView.Selection.Mode = SelectionMode.Multiple; updatesTree = new AddinTreeWidget(updatesTreeView); updatesTree.VersionVisible = false; updatesTree.ShowCategories = false; updatesTree.ShowInstalledMarkers = true; updatesTreeView.Selection.Changed += OnGallerySelectionChanged; repoStore = new ListStore(typeof(string), typeof(string)); repoCombo.Model = repoStore; CellRendererText crt = new CellRendererText(); repoCombo.PackStart(crt, true); repoCombo.AddAttribute(crt, "text", 0); repoCombo.RowSeparatorFunc = delegate(TreeModel model, TreeIter iter) { string val = (string)model.GetValue(iter, 0); return(val == "---"); }; // Make sure the tree has the focus when switching tabs vboxUpdates.FocusChain = new Widget [] { scrolledUpdates, eboxRepoUpdates }; vboxGallery.FocusChain = new Widget [] { scrolledGallery, eboxRepo }; // Improve the look of the headers HBox tab = new HBox(false, 3); tab.PackStart(new Image(Gdk.Pixbuf.LoadFromResource("plugin-22.png")), false, false, 0); installedTabLabel = new Label(Catalog.GetString("Installed")); tab.PackStart(installedTabLabel, true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); notebook.SetTabLabel(notebook.GetNthPage(0), tab); tab = new HBox(false, 3); tab.PackStart(new Image(Gdk.Pixbuf.LoadFromResource("plugin-update-22.png")), false, false, 0); updatesTabLabel = new Label(Catalog.GetString("Updates")); tab.PackStart(updatesTabLabel, true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); notebook.SetTabLabel(notebook.GetNthPage(1), tab); tab = new HBox(false, 3); tab.PackStart(new Image(Gdk.Pixbuf.LoadFromResource("update-16.png")), false, false, 0); galleryTabLabel = new Label(Catalog.GetString("Gallery")); tab.PackStart(galleryTabLabel, true, true, 0); tab.BorderWidth = 3; tab.ShowAll(); notebook.SetTabLabel(notebook.GetNthPage(2), tab); // Gradient header for the updates and gallery tabs HeaderBox hb = new HeaderBox(1, 0, 1, 1); hb.SetPadding(6, 6, 6, 6); hb.GradientBackround = true; hb.Show(); hb.Replace(eboxRepo); hb = new HeaderBox(1, 0, 1, 1); hb.SetPadding(6, 6, 6, 6); hb.GradientBackround = true; hb.Show(); hb.Replace(eboxRepoUpdates); InsertFilterEntry(); FillRepos(); repoCombo.Active = 0; LoadAll(); }
void Init() { main = new VBox(false, 6); widget = main; buttonCommit = new Gtk.Button() { Image = new Gtk.Image("vc-commit", Gtk.IconSize.Menu), Label = GettextCatalog.GetString("Commit...") }; buttonCommit.Image.Show(); buttonRevert = new Gtk.Button() { Image = new Gtk.Image("vc-revert-command", Gtk.IconSize.Menu), Label = GettextCatalog.GetString("Revert") }; buttonRevert.Image.Show(); showRemoteStatus = new Gtk.Button() { Image = new Gtk.Image("vc-remote-status", Gtk.IconSize.Menu), Label = GettextCatalog.GetString("Show Remote Status") }; showRemoteStatus.Image.Show(); status = new Label(""); main.PackStart(status, false, false, 0); scroller = new ScrolledWindow(); scroller.ShadowType = Gtk.ShadowType.None; filelist = new FileTreeView(); filelist.Selection.Mode = Gtk.SelectionMode.Multiple; scroller.Add(filelist); scroller.HscrollbarPolicy = PolicyType.Automatic; scroller.VscrollbarPolicy = PolicyType.Automatic; filelist.RowActivated += OnRowActivated; filelist.DiffLineActivated += OnDiffLineActivated; CellRendererToggle cellToggle = new CellRendererToggle(); cellToggle.Toggled += new ToggledHandler(OnCommitToggledHandler); var crc = new CellRendererIcon(); crc.StockId = "vc-comment"; colCommit = new TreeViewColumn(); colCommit.Spacing = 2; colCommit.Widget = new Gtk.Image("vc-commit", Gtk.IconSize.Menu); colCommit.Widget.Show(); colCommit.PackStart(cellToggle, false); colCommit.PackStart(crc, false); colCommit.AddAttribute(cellToggle, "active", ColCommit); colCommit.AddAttribute(cellToggle, "visible", ColShowToggle); colCommit.AddAttribute(crc, "visible", ColShowComment); CellRendererText crt = new CellRendererText(); var crp = new CellRendererPixbuf(); TreeViewColumn colStatus = new TreeViewColumn(); colStatus.Title = GettextCatalog.GetString("Status"); colStatus.PackStart(crp, false); colStatus.PackStart(crt, true); colStatus.AddAttribute(crp, "pixbuf", ColIcon); colStatus.AddAttribute(crp, "visible", ColShowStatus); colStatus.AddAttribute(crt, "text", ColStatus); colStatus.AddAttribute(crt, "foreground", ColStatusColor); TreeViewColumn colFile = new TreeViewColumn(); colFile.Title = GettextCatalog.GetString("File"); colFile.Spacing = 2; crp = new CellRendererPixbuf(); diffRenderer = new CellRendererDiff(); colFile.PackStart(crp, false); colFile.PackStart(diffRenderer, true); colFile.AddAttribute(crp, "pixbuf", ColIconFile); colFile.AddAttribute(crp, "visible", ColShowStatus); colFile.SetCellDataFunc(diffRenderer, new TreeCellDataFunc(SetDiffCellData)); crt = new CellRendererText(); crp = new CellRendererPixbuf(); colRemote = new TreeViewColumn(); colRemote.Title = GettextCatalog.GetString("Remote Status"); colRemote.PackStart(crp, false); colRemote.PackStart(crt, true); colRemote.AddAttribute(crp, "pixbuf", ColRemoteIcon); colRemote.AddAttribute(crt, "text", ColRemoteStatus); colRemote.AddAttribute(crt, "foreground", ColStatusColor); filelist.AppendColumn(colStatus); filelist.AppendColumn(colRemote); filelist.AppendColumn(colCommit); filelist.AppendColumn(colFile); colRemote.Visible = false; filestore = new TreeStore(typeof(Gdk.Pixbuf), typeof(string), typeof(string[]), typeof(string), typeof(bool), typeof(bool), typeof(string), typeof(bool), typeof(bool), typeof(Gdk.Pixbuf), typeof(bool), typeof(Gdk.Pixbuf), typeof(string), typeof(bool), typeof(bool)); filelist.Model = filestore; filelist.TestExpandRow += new Gtk.TestExpandRowHandler(OnTestExpandRow); commitBox = new VBox(); HeaderBox commitMessageLabelBox = new HeaderBox(); commitMessageLabelBox.SetPadding(6, 6, 6, 6); commitMessageLabelBox.SetMargins(1, 1, 0, 0); HBox labBox = new HBox(); labelCommit = new Gtk.Label(GettextCatalog.GetString("Commit message:")); labelCommit.Xalign = 0; labBox.PackStart(new Gtk.Image("vc-comment", Gtk.IconSize.Menu), false, false, 0); labBox.PackStart(labelCommit, true, true, 3); commitMessageLabelBox.Add(labBox); commitMessageLabelBox.ShowAll(); //commitBox.PackStart (commitMessageLabelBox, false, false, 0); Gtk.ScrolledWindow frame = new Gtk.ScrolledWindow(); frame.HeightRequest = 75; frame.ShadowType = ShadowType.None; commitText = new TextView(); commitText.WrapMode = WrapMode.WordChar; commitText.Buffer.Changed += OnCommitTextChanged; frame.Add(commitText); commitBox.PackStart(frame, true, true, 0); var paned = new VPanedThin(); paned.HandleWidget = commitMessageLabelBox; paned.Pack1(scroller, true, true); paned.Pack2(commitBox, false, false); main.PackStart(paned, true, true, 0); main.ShowAll(); status.Visible = false; filelist.Selection.Changed += new EventHandler(OnCursorChanged); VersionControlService.FileStatusChanged += OnFileStatusChanged; filelist.HeadersClickable = true; filestore.SetSortFunc(0, CompareNodes); colStatus.SortColumnId = 0; filestore.SetSortFunc(1, CompareNodes); colRemote.SortColumnId = 1; filestore.SetSortFunc(2, CompareNodes); colCommit.SortColumnId = 2; filestore.SetSortFunc(3, CompareNodes); colFile.SortColumnId = 3; filestore.SetSortColumnId(3, Gtk.SortType.Ascending); filelist.DoPopupMenu = DoPopupMenu; StartUpdate(); }
public OptionsDialog(MonoDevelop.Components.Window parentWindow, object dataObject, string extensionPath, bool removeEmptySections) { buttonCancel = new Gtk.Button(Gtk.Stock.Cancel); buttonCancel.Accessible.Name = "Dialogs.Options.Cancel"; buttonCancel.Accessible.Description = GettextCatalog.GetString("Close the options dialog and discard any changes"); AddActionWidget(this.buttonCancel, ResponseType.Cancel); buttonOk = new Gtk.Button(Gtk.Stock.Ok); buttonOk.Accessible.Name = "Dialogs.Options.Ok"; buttonOk.Accessible.Description = GettextCatalog.GetString("Close the options dialog and keep the changes"); this.ActionArea.PackStart(buttonOk); buttonOk.Clicked += OnButtonOkClicked; mainHBox = new HBox(); mainHBox.Accessible.SetShouldIgnore(true); tree = new TreeView(); tree.Accessible.Name = "Dialogs.Options.Categories"; tree.Accessible.Description = GettextCatalog.GetString("The categories of options that are available in this dialog"); var sw = new ScrolledWindow(); sw.Accessible.SetShouldIgnore(true); sw.Add(tree); sw.HscrollbarPolicy = PolicyType.Never; sw.VscrollbarPolicy = PolicyType.Automatic; sw.ShadowType = ShadowType.None; var fboxTree = new HeaderBox(); fboxTree.Accessible.SetShouldIgnore(true); fboxTree.SetMargins(0, 1, 0, 1); fboxTree.SetPadding(0, 0, 0, 0); fboxTree.BackgroundColor = new Gdk.Color(255, 255, 255); fboxTree.Add(sw); mainHBox.PackStart(fboxTree, false, false, 0); Realized += delegate { fboxTree.BackgroundColor = tree.Style.Base(Gtk.StateType.Normal); }; var vbox = new VBox(); vbox.Accessible.SetShouldIgnore(true); mainHBox.PackStart(vbox, true, true, 0); var headerBox = new HBox(false, 6); headerBox.Accessible.SetShouldIgnore(true); labelTitle = new Label(); labelTitle.Accessible.Name = "Dialogs.Options.PageTitle"; labelTitle.Xalign = 0; textHeader = new Alignment(0, 0, 1, 1); textHeader.Accessible.SetShouldIgnore(true); textHeader.Add(labelTitle); textHeader.BorderWidth = 12; headerBox.PackStart(textHeader, true, true, 0); imageHeader = new OptionsDialogHeader(); imageHeader.Hide(); var imageHeaderWidget = imageHeader.ToGtkWidget(); imageHeaderWidget.Accessible.SetShouldIgnore(true); headerBox.PackStart(imageHeaderWidget); var fboxHeader = new HeaderBox(); fboxHeader.Accessible.SetShouldIgnore(true); fboxHeader.SetMargins(0, 1, 0, 0); fboxHeader.Add(headerBox); // fbox.GradientBackround = true; // fbox.BackgroundColor = new Gdk.Color (255, 255, 255); Realized += delegate { var c = Style.Background(Gtk.StateType.Normal).ToXwtColor(); c.Light += 0.09; fboxHeader.BackgroundColor = c.ToGdkColor(); }; StyleSet += delegate { if (IsRealized) { var c = Style.Background(Gtk.StateType.Normal).ToXwtColor(); c.Light += 0.09; fboxHeader.BackgroundColor = c.ToGdkColor(); } }; vbox.PackStart(fboxHeader, false, false, 0); pageFrame = new HBox(); pageFrame.Accessible.SetShouldIgnore(true); var fbox = new HeaderBox(); fbox.Accessible.SetShouldIgnore(true); fbox.SetMargins(0, 1, 0, 0); fbox.ShowTopShadow = true; fbox.Add(pageFrame); vbox.PackStart(fbox, true, true, 0); this.VBox.PackStart(mainHBox, true, true, 0); this.removeEmptySections = removeEmptySections; extensionContext = AddinManager.CreateExtensionContext(); this.mainDataObject = dataObject; this.extensionPath = extensionPath; ImageService.EnsureStockIconIsLoaded(emptyCategoryIcon); store = new TreeStore(typeof(OptionsDialogSection)); tree.Model = store; tree.HeadersVisible = false; // Column 0 is used to add some padding at the left of the expander TreeViewColumn col0 = new TreeViewColumn(); col0.MinWidth = 6; tree.AppendColumn(col0); TreeViewColumn col = new TreeViewColumn(); var crp = new CellRendererImage(); col.PackStart(crp, false); col.SetCellDataFunc(crp, PixbufCellDataFunc); var crt = new CellRendererText(); col.PackStart(crt, true); col.SetCellDataFunc(crt, TextCellDataFunc); tree.AppendColumn(col); tree.ExpanderColumn = col; tree.Selection.Changed += OnSelectionChanged; Child.ShowAll(); InitializeContext(extensionContext); FillTree(); ExpandCategories(); RestoreLastPanel(); this.DefaultResponse = Gtk.ResponseType.Ok; buttonOk.CanDefault = true; buttonOk.GrabDefault(); DefaultWidth = 960; DefaultHeight = 680; }
public void ShowPage(PageType type, string [] warnings) { if (type == PageType.Setup) { Header = "Welcome to SparkleShare!"; Description = "First off, what’s your name and email?\n(visible only to team members)"; Table table = new Table(2, 3, true) { RowSpacing = 6, ColumnSpacing = 6 }; Label name_label = new Label("<b>" + "Full Name:" + "</b>") { UseMarkup = true, Xalign = 1 }; Entry name_entry = new Entry() { Xalign = 0, ActivatesDefault = true }; try{ UnixUserInfo user_info = UnixUserInfo.GetRealUser(); if (user_info != null && user_info.RealName != null) { name_entry.Text = user_info.RealName.TrimEnd(",".ToCharArray()); } } catch (System.ArgumentException e) { //ignore if could not get userName } Entry email_entry = new Entry() { Xalign = 0, ActivatesDefault = true }; Label email_label = new Label("<b>" + "Email:" + "</b>") { UseMarkup = true, Xalign = 1 }; table.Attach(name_label, 0, 1, 0, 1); table.Attach(name_entry, 1, 2, 0, 1); table.Attach(email_label, 0, 1, 1, 2); table.Attach(email_entry, 1, 2, 1, 2); VBox wrapper = new VBox(false, 9); wrapper.PackStart(table, true, false, 0); Button cancel_button = new Button("Cancel"); Button continue_button = new Button("Continue") { Sensitive = false }; Controller.UpdateSetupContinueButtonEvent += delegate(bool button_enabled) { Application.Invoke(delegate { continue_button.Sensitive = button_enabled; }); }; name_entry.Changed += delegate { Controller.CheckSetupPage(name_entry.Text, email_entry.Text); }; email_entry.Changed += delegate { Controller.CheckSetupPage(name_entry.Text, email_entry.Text); }; cancel_button.Clicked += delegate { Controller.SetupPageCancelled(); }; continue_button.Clicked += delegate { Controller.SetupPageCompleted(name_entry.Text, email_entry.Text); }; AddButton(cancel_button); AddButton(continue_button); Add(wrapper); Controller.CheckSetupPage(name_entry.Text, email_entry.Text); if (name_entry.Text.Equals("")) { name_entry.GrabFocus(); } else { email_entry.GrabFocus(); } } if (type == PageType.Add) { Header = "Where’s your project hosted?"; VBox layout_vertical = new VBox(false, 16); HBox layout_fields = new HBox(true, 32); VBox layout_address = new VBox(true, 0); VBox layout_path = new VBox(true, 0); ListStore store = new ListStore(typeof(string), typeof(Gdk.Pixbuf), typeof(string), typeof(SparklePlugin)); SparkleTreeView tree_view = new SparkleTreeView(store) { HeadersVisible = false }; ScrolledWindow scrolled_window = new ScrolledWindow() { ShadowType = ShadowType.In }; scrolled_window.SetPolicy(PolicyType.Never, PolicyType.Automatic); // Padding column tree_view.AppendColumn("Padding", new Gtk.CellRendererText(), "text", 0); tree_view.Columns [0].Cells [0].Xpad = 4; // Icon column tree_view.AppendColumn("Icon", new Gtk.CellRendererPixbuf(), "pixbuf", 1); tree_view.Columns [1].Cells [0].Xpad = 4; // Service column TreeViewColumn service_column = new TreeViewColumn() { Title = "Service" }; CellRendererText service_cell = new CellRendererText() { Ypad = 8 }; service_column.PackStart(service_cell, true); service_column.SetCellDataFunc(service_cell, new TreeCellDataFunc(RenderServiceColumn)); foreach (SparklePlugin plugin in Controller.Plugins) { store.AppendValues("", new Gdk.Pixbuf(plugin.ImagePath), "<span size=\"small\"><b>" + plugin.Name + "</b>\n" + "<span fgcolor=\"" + SecondaryTextColor + "\">" + plugin.Description + "</span>" + "</span>", plugin); } tree_view.AppendColumn(service_column); scrolled_window.Add(tree_view); Entry address_entry = new Entry() { Text = Controller.PreviousAddress, Sensitive = (Controller.SelectedPlugin.Address == null), ActivatesDefault = true }; Entry path_entry = new Entry() { Text = Controller.PreviousPath, Sensitive = (Controller.SelectedPlugin.Path == null), ActivatesDefault = true }; Label address_example = new Label() { Xalign = 0, UseMarkup = true, Markup = "<span size=\"small\" fgcolor=\"" + SecondaryTextColor + "\">" + Controller.SelectedPlugin.AddressExample + "</span>" }; Label path_example = new Label() { Xalign = 0, UseMarkup = true, Markup = "<span size=\"small\" fgcolor=\"" + SecondaryTextColor + "\">" + Controller.SelectedPlugin.PathExample + "</span>" }; TreeSelection default_selection = tree_view.Selection; TreePath default_path = new TreePath("" + Controller.SelectedPluginIndex); default_selection.SelectPath(default_path); tree_view.Model.Foreach(new TreeModelForeachFunc( delegate(ITreeModel model, TreePath path, TreeIter iter) { string address; try { address = (model.GetValue(iter, 2) as SparklePlugin).Address; } catch (NullReferenceException) { address = ""; } if (!string.IsNullOrEmpty(address) && address.Equals(Controller.PreviousAddress)) { tree_view.SetCursor(path, service_column, false); SparklePlugin plugin = (SparklePlugin)model.GetValue(iter, 2); if (plugin.Address != null) { address_entry.Sensitive = false; } if (plugin.Path != null) { path_entry.Sensitive = false; } return(true); } else { return(false); } } )); layout_address.PackStart(new Label() { Markup = "<b>" + "Address" + "</b>", Xalign = 0 }, true, true, 0); layout_address.PackStart(address_entry, false, false, 0); layout_address.PackStart(address_example, false, false, 0); path_entry.Changed += delegate { Controller.CheckAddPage(address_entry.Text, path_entry.Text, tree_view.SelectedRow); }; layout_path.PackStart(new Label() { Markup = "<b>" + "Remote Path" + "</b>", Xalign = 0 }, true, true, 0); layout_path.PackStart(path_entry, false, false, 0); layout_path.PackStart(path_example, false, false, 0); layout_fields.PackStart(layout_address, true, true, 0); layout_fields.PackStart(layout_path, true, true, 0); layout_vertical.PackStart(new Label(""), false, false, 0); layout_vertical.PackStart(scrolled_window, true, true, 0); layout_vertical.PackStart(layout_fields, false, false, 0); tree_view.ScrollToCell(new TreePath("" + Controller.SelectedPluginIndex), null, true, 0, 0); Add(layout_vertical); if (string.IsNullOrEmpty(path_entry.Text)) { address_entry.GrabFocus(); address_entry.Position = -1; } else { path_entry.GrabFocus(); path_entry.Position = -1; } Button cancel_button = new Button("Cancel"); Button add_button = new Button("Add") { Sensitive = false }; Controller.ChangeAddressFieldEvent += delegate(string text, string example_text, FieldState state) { Application.Invoke(delegate { address_entry.Text = text; address_entry.Sensitive = (state == FieldState.Enabled); address_example.Markup = "<span size=\"small\" fgcolor=\"" + SecondaryTextColor + "\">" + example_text + "</span>"; }); }; Controller.ChangePathFieldEvent += delegate(string text, string example_text, FieldState state) { Application.Invoke(delegate { path_entry.Text = text; path_entry.Sensitive = (state == FieldState.Enabled); path_example.Markup = "<span size=\"small\" fgcolor=\"" + SecondaryTextColor + "\">" + example_text + "</span>"; }); }; Controller.UpdateAddProjectButtonEvent += delegate(bool button_enabled) { Application.Invoke(delegate { add_button.Sensitive = button_enabled; }); }; tree_view.CursorChanged += delegate(object sender, EventArgs e) { Controller.SelectedPluginChanged(tree_view.SelectedRow); }; address_entry.Changed += delegate { Controller.CheckAddPage(address_entry.Text, path_entry.Text, tree_view.SelectedRow); }; cancel_button.Clicked += delegate { Controller.PageCancelled(); }; add_button.Clicked += delegate { Controller.AddPageCompleted(address_entry.Text, path_entry.Text); }; CheckButton check_button = new CheckButton("Fetch prior history") { Active = false }; check_button.Toggled += delegate { Controller.HistoryItemChanged(check_button.Active); }; AddOption(check_button); AddButton(cancel_button); AddButton(add_button); Controller.CheckAddPage(address_entry.Text, path_entry.Text, 1); } if (type == PageType.Invite) { Header = "You’ve received an invite!"; Description = "Do you want to add this project to SparkleShare?"; Table table = new Table(2, 3, true) { RowSpacing = 6, ColumnSpacing = 6 }; Label address_label = new Label("Address:") { Xalign = 1 }; Label path_label = new Label("Remote Path:") { Xalign = 1 }; Label address_value = new Label("<b>" + Controller.PendingInvite.Address + "</b>") { UseMarkup = true, Xalign = 0 }; Label path_value = new Label("<b>" + Controller.PendingInvite.RemotePath + "</b>") { UseMarkup = true, Xalign = 0 }; table.Attach(address_label, 0, 1, 0, 1); table.Attach(address_value, 1, 2, 0, 1); table.Attach(path_label, 0, 1, 1, 2); table.Attach(path_value, 1, 2, 1, 2); VBox wrapper = new VBox(false, 9); wrapper.PackStart(table, true, false, 0); Button cancel_button = new Button("Cancel"); Button add_button = new Button("Add"); cancel_button.Clicked += delegate { Controller.PageCancelled(); }; add_button.Clicked += delegate { Controller.InvitePageCompleted(); }; AddButton(cancel_button); AddButton(add_button); Add(wrapper); } if (type == PageType.Syncing) { Header = String.Format("Adding project ‘{0}’…", Controller.SyncingFolder); Description = "This may take a while for large projects.\nIsn’t it coffee-o’clock?"; ProgressBar progress_bar = new ProgressBar(); progress_bar.Fraction = Controller.ProgressBarPercentage / 100; Button cancel_button = new Button() { Label = "Cancel" }; Button finish_button = new Button("Finish") { Sensitive = false }; Label progress_label = new Label("Preparing to fetch files…") { Justify = Justification.Right, Xalign = 1 }; Controller.UpdateProgressBarEvent += delegate(double percentage, string speed) { Application.Invoke(delegate { progress_bar.Fraction = percentage / 100; progress_label.Text = speed; }); }; cancel_button.Clicked += delegate { Controller.SyncingCancelled(); }; VBox bar_wrapper = new VBox(false, 0); bar_wrapper.PackStart(progress_bar, false, false, 21); bar_wrapper.PackStart(progress_label, false, true, 0); Add(bar_wrapper); AddButton(cancel_button); AddButton(finish_button); } if (type == PageType.Error) { Header = "Oops! Something went wrong" + "…"; VBox points = new VBox(false, 0); Image list_point_one = new Image(SparkleUIHelpers.GetIcon("list-point", 16)); Image list_point_two = new Image(SparkleUIHelpers.GetIcon("list-point", 16)); Image list_point_three = new Image(SparkleUIHelpers.GetIcon("list-point", 16)); Label label_one = new Label() { Markup = "<b>" + Controller.PreviousUrl + "</b> is the address we’ve compiled. " + "Does this look alright?", Wrap = true, Xalign = 0 }; Label label_two = new Label() { Text = "Is this computer’s Client ID known by the host?", Wrap = true, Xalign = 0 }; points.PackStart(new Label("Please check the following:") { Xalign = 0 }, false, false, 6); HBox point_one = new HBox(false, 0); point_one.PackStart(list_point_one, false, false, 0); point_one.PackStart(label_one, true, true, 12); points.PackStart(point_one, false, false, 12); HBox point_two = new HBox(false, 0); point_two.PackStart(list_point_two, false, false, 0); point_two.PackStart(label_two, true, true, 12); points.PackStart(point_two, false, false, 12); if (warnings.Length > 0) { string warnings_markup = ""; foreach (string warning in warnings) { warnings_markup += "\n<b>" + warning + "</b>"; } Label label_three = new Label() { Markup = "Here’s the raw error message:" + warnings_markup, Wrap = true, Xalign = 0 }; HBox point_three = new HBox(false, 0); point_three.PackStart(list_point_three, false, false, 0); point_three.PackStart(label_three, true, true, 12); points.PackStart(point_three, false, false, 12); } points.PackStart(new Label(""), true, true, 0); Button cancel_button = new Button("Cancel"); Button try_again_button = new Button("Try Again…") { Sensitive = true }; cancel_button.Clicked += delegate { Controller.PageCancelled(); }; try_again_button.Clicked += delegate { Controller.ErrorPageCompleted(); }; AddButton(cancel_button); AddButton(try_again_button); Add(points); } if (type == PageType.CryptoSetup || type == PageType.CryptoPassword) { if (type == PageType.CryptoSetup) { Header = "Set up file encryption"; Description = "Please a provide a strong password that you don’t use elsewhere."; } else { Header = "This project contains encrypted files"; Description = "Please enter the password to see their contents."; } Label password_label = new Label("<b>" + "Password" + "</b>") { UseMarkup = true, Xalign = 1 }; Entry password_entry = new Entry() { Xalign = 0, Visibility = false, ActivatesDefault = true }; CheckButton show_password_check_button = new CheckButton("Show password") { Active = false, Xalign = 0, }; Table table = new Table(2, 3, true) { RowSpacing = 6, ColumnSpacing = 6 }; table.Attach(password_label, 0, 1, 0, 1); table.Attach(password_entry, 1, 2, 0, 1); table.Attach(show_password_check_button, 1, 2, 1, 2); VBox wrapper = new VBox(false, 9); wrapper.PackStart(table, true, false, 0); Image warning_image = new Image( SparkleUIHelpers.GetIcon("dialog-information", 24)); Label warning_label = new Label() { Xalign = 0, Wrap = true, Text = "This password can’t be changed later, and your files can’t be recovered if it’s forgotten." }; HBox warning_layout = new HBox(false, 0); warning_layout.PackStart(warning_image, false, false, 15); warning_layout.PackStart(warning_label, true, true, 0); VBox warning_wrapper = new VBox(false, 0); warning_wrapper.PackStart(warning_layout, false, false, 15); if (type == PageType.CryptoSetup) { wrapper.PackStart(warning_wrapper, false, false, 0); } Button cancel_button = new Button("Cancel"); Button continue_button = new Button("Continue") { Sensitive = false }; Controller.UpdateCryptoSetupContinueButtonEvent += delegate(bool button_enabled) { Application.Invoke(delegate { continue_button.Sensitive = button_enabled; }); }; Controller.UpdateCryptoPasswordContinueButtonEvent += delegate(bool button_enabled) { Application.Invoke(delegate { continue_button.Sensitive = button_enabled; }); }; show_password_check_button.Toggled += delegate { password_entry.Visibility = !password_entry.Visibility; }; password_entry.Changed += delegate { if (type == PageType.CryptoSetup) { Controller.CheckCryptoSetupPage(password_entry.Text); } else { Controller.CheckCryptoPasswordPage(password_entry.Text); } }; cancel_button.Clicked += delegate { Controller.CryptoPageCancelled(); }; continue_button.Clicked += delegate { if (type == PageType.CryptoSetup) { Controller.CryptoSetupPageCompleted(password_entry.Text); } else { Controller.CryptoPasswordPageCompleted(password_entry.Text); } }; Add(wrapper); AddButton(cancel_button); AddButton(continue_button); password_entry.GrabFocus(); } if (type == PageType.Finished) { Header = "Your shared project is ready!"; Description = "You can find the files in your SparkleShare folder."; UrgencyHint = true; Button show_files_button = new Button("Show Files…"); Button finish_button = new Button("Finish"); show_files_button.Clicked += delegate { Controller.ShowFilesClicked(); }; finish_button.Clicked += delegate { Controller.FinishPageCompleted(); }; if (warnings.Length > 0) { Image warning_image = new Image(SparkleUIHelpers.GetIcon("dialog-information", 24)); Label warning_label = new Label(warnings [0]) { Xalign = 0, Wrap = true }; HBox warning_layout = new HBox(false, 0); warning_layout.PackStart(warning_image, false, false, 15); warning_layout.PackStart(warning_label, true, true, 0); VBox warning_wrapper = new VBox(false, 0); warning_wrapper.PackStart(warning_layout, false, false, 0); Add(warning_wrapper); } else { Add(null); } AddButton(show_files_button); AddButton(finish_button); } if (type == PageType.Tutorial) { switch (Controller.TutorialPageNumber) { case 1: { Header = "What’s happening next?"; Description = "SparkleShare creates a special folder on your computer " + "that will keep track of your projects."; Button skip_tutorial_button = new Button("Skip Tutorial"); Button continue_button = new Button("Continue"); skip_tutorial_button.Clicked += delegate { Controller.TutorialSkipped(); }; continue_button.Clicked += delegate { Controller.TutorialPageCompleted(); }; AddButton(skip_tutorial_button); AddButton(continue_button); break; } case 2: { Header = "Sharing files with others"; Description = "All files added to your project folders are synced automatically with " + "the host and your team members."; Button continue_button = new Button("Continue"); continue_button.Clicked += delegate { Controller.TutorialPageCompleted(); }; AddButton(continue_button); break; } case 3: { Header = "The status icon helps you"; Description = "It shows the syncing progress, provides easy access to " + "your projects, and lets you view recent changes."; Button continue_button = new Button("Continue"); continue_button.Clicked += delegate { Controller.TutorialPageCompleted(); }; AddButton(continue_button); break; } case 4: { Header = "Here’s your unique Client ID"; Description = "You’ll need it whenever you want to link this computer to a host. " + "You can also find it in the status icon menu."; Button finish_button = new Button("Finish"); VBox layout_vertical = new VBox(false, 0) { BorderWidth = 48 }; HBox layout_horizontal = new HBox(false, 6); Entry link_code_entry = new Entry() { Text = Program.Controller.CurrentUser.PublicKey, Sensitive = false }; Button copy_button = new Button(" Copy "); CheckButton check_button = new CheckButton("Add SparkleShare to startup items"); check_button.Active = true; copy_button.Clicked += delegate { Controller.CopyToClipboardClicked(); }; check_button.Toggled += delegate { Controller.StartupItemChanged(check_button.Active); }; finish_button.Clicked += delegate { Controller.TutorialPageCompleted(); }; layout_horizontal.PackStart(link_code_entry, true, true, 0); layout_horizontal.PackStart(copy_button, false, false, 0); layout_vertical.PackStart(new Label(""), true, true, 0); layout_vertical.PackStart(layout_horizontal, false, false, 0); layout_vertical.PackStart(new Label(""), true, true, 18); Add(layout_vertical); AddOption(check_button); AddButton(finish_button); break; } } if (Controller.TutorialPageNumber < 4) { Image slide = SparkleUIHelpers.GetImage("tutorial-slide-" + Controller.TutorialPageNumber + ".png"); Add(slide); } } }
public void fillTreeView() { CellRendererText cellRendererText = new CellRendererText(); for (int i = 0; i < queryResult.ColumNames.Length; i++) { int column = i; treeView.AppendColumn(queryResult.ColumNames.GetValue(i).ToString(), cellRendererText, delegate(TreeViewColumn treeColumn, CellRenderer cell, TreeModel treeModel, TreeIter iter) { IList row = (IList)treeModel.GetValue(iter, 0); cellRendererText.Text = row [column].ToString(); }); } /** treeView.AppendColumn ("Editar", new Gtk.CellRendererPixbuf (), "pixbuf", 1); * * * * * * * * treeView.AppendColumn ("Eliminar",new Gtk.CellRendererPixbuf(),"pixbuf",2);*/ //listStore = new ListStore (typeof(IList),typeof(Gdk.Pixbuf),typeof(Gdk.Pixbuf)); listStore = new ListStore(typeof(IList)); IEnumerable <IList> values = queryResult.Rows; foreach (IList k in values) { listStore.AppendValues(k); } treeView.Model = listStore; /** * * Pixbuf pixbufDelete = new Pixbuf (this.GetType ().Assembly, "PSerpisAd.delete.png"); * * Pixbuf pixbufEdit = new Pixbuf (this.GetType ().Assembly, "PSerpisAd.edit.png"); * * * foreach (IList k in values) { * listStore.AppendValues (k,pixbufEdit,pixbufDelete); * } * * treeView.Model = listStore; * * * * * * treeView.RowActivated += (delegate(object o, RowActivatedArgs args){ * * * string tituloRow = args.Column.Title; * * if(tituloRow == "Editar"){ * * * Console.WriteLine(tituloRow + " prueba path:" +args.Path); * * TreeIter treeIter = new TreeIter(); * * treeView.Model.GetIter(out treeIter,args.Path); * * IList row = (IList) treeView.Model.GetValue(treeIter,0); * * * } * * if(tituloRow == "Eliminar"){ * * * * Console.WriteLine(tituloRow + " prueba path:" +args.Path); * * TreeIter treeIter = new TreeIter(); * * treeView.Model.GetIter(out treeIter,args.Path); * * IList row = (IList) treeView.Model.GetValue(treeIter,0); * int id = int.Parse(row [0].ToString()); * Console.WriteLine(id); * * } * * }); */ }
public XmlSchemasPanelWidget() { this.Build(); //set up tree view for default schemas var textRenderer = new CellRendererText(); registeredSchemasStore = new ListStore(typeof(XmlSchemaCompletionData)); registeredSchemasView.Model = registeredSchemasStore; registeredSchemasView.AppendColumn(GettextCatalog.GetString("Namespace"), textRenderer, (TreeViewColumn col, CellRenderer cell, TreeModel model, TreeIter iter) => { ((CellRendererText)cell).Text = GetSchema(iter).NamespaceUri; } ); registeredSchemasView.AppendColumn(GettextCatalog.GetString("Type"), textRenderer, (TreeViewColumn col, CellRenderer cell, TreeModel model, TreeIter iter) => { ((CellRendererText)cell).Text = GetSchema(iter).ReadOnly? GettextCatalog.GetString("Built in") : GettextCatalog.GetString("User schema"); }); registeredSchemasStore.SetSortFunc(0, (model, a, b) => string.Compare(GetSchema(a).NamespaceUri, GetSchema(b).NamespaceUri)); registeredSchemasStore.SetSortColumnId(0, SortType.Ascending); //update state of "remove" button depending on whether schema is read-only and anything's slected registeredSchemasView.Selection.Changed += delegate { var data = GetSelectedSchema(); registeredSchemasRemoveButton.Sensitive = (data != null && !data.ReadOnly); }; registeredSchemasRemoveButton.Sensitive = false; //set up cells for associations var extensionTextRenderer = new CellRendererText(); extensionTextRenderer.Editable = true; var prefixTextRenderer = new CellRendererText(); prefixTextRenderer.Editable = true; var comboEditor = new CellRendererCombo(); registeredSchemasComboModel = new ListStore(typeof(string)); comboEditor.Model = registeredSchemasComboModel; comboEditor.Mode = CellRendererMode.Editable; comboEditor.TextColumn = 0; comboEditor.Editable = true; comboEditor.HasEntry = false; //rebuild combo's model from default schemas whenever editing starts comboEditor.EditingStarted += delegate(object sender, EditingStartedArgs args) { registeredSchemasComboModel.Clear(); registeredSchemasComboModel.AppendValues(string.Empty); foreach (TreeIter iter in WalkStore(registeredSchemasStore)) { registeredSchemasComboModel.AppendValues( GetSchema(iter).NamespaceUri ); } args.RetVal = true; registeredSchemasComboModel.SetSortColumnId(0, SortType.Ascending); }; //set up tree view for associations defaultAssociationsStore = new ListStore(typeof(string), typeof(string), typeof(string), typeof(bool)); defaultAssociationsView.Model = defaultAssociationsStore; defaultAssociationsView.AppendColumn(GettextCatalog.GetString("File Extension"), extensionTextRenderer, "text", COL_EXT); defaultAssociationsView.AppendColumn(GettextCatalog.GetString("Namespace"), comboEditor, "text", COL_NS); defaultAssociationsView.AppendColumn(GettextCatalog.GetString("Prefix"), prefixTextRenderer, "text", COL_PREFIX); defaultAssociationsStore.SetSortColumnId(COL_EXT, SortType.Ascending); //editing handlers extensionTextRenderer.Edited += handleExtensionSet; comboEditor.Edited += delegate(object sender, EditedArgs args) { setAssocValAndMarkChanged(args.Path, COL_NS, args.NewText ?? ""); }; prefixTextRenderer.Edited += delegate(object sender, EditedArgs args) { foreach (char c in args.NewText) { if (!char.IsLetterOrDigit(c)) { //FIXME: give an error message? return; } } setAssocValAndMarkChanged(args.Path, COL_PREFIX, args.NewText); }; //update state of "remove" button depending on whether anything's slected defaultAssociationsView.Selection.Changed += delegate { TreeIter iter; defaultAssociationsRemoveButton.Sensitive = defaultAssociationsView.Selection.GetSelected(out iter); }; defaultAssociationsRemoveButton.Sensitive = false; }
void CreateTreeView() { //CreateColumns TreeViewColumn col = new TreeViewColumn(); CellRendererText cell = new CellRendererText(); cell.Editable = true; col.Title = "Nodes"; col.PackStart(cell, true); col.AddAttribute(cell, "text", 0); treeview1.AppendColumn(col); TreeViewColumn col2 = new TreeViewColumn(); CellRendererText cell2 = new CellRendererText(); cell2.Editable = true; col2.Title = "Url"; col2.PackStart(cell2, true); col2.AddAttribute(cell2, "text", 1); col2.Visible = false; treeview1.AppendColumn(col2); treeview1.HeadersVisible = false; //Add Store treestore = new TreeStore(typeof(string), typeof(string)); treeview1.Model = treestore; cell.Edited += (o, args) => { Gtk.TreeIter iter; treestore.GetIter(out iter, new Gtk.TreePath(args.Path)); String newvalue = (String)treestore.GetValue(iter, 0); Console.WriteLine(newvalue); treestore.SetValue(iter, 0, args.NewText); }; cell2.Edited += (o, args) => { Gtk.TreeIter iter; treestore.GetIter(out iter, new Gtk.TreePath(args.Path)); String newvalue = (String)treestore.GetValue(iter, 1); Console.WriteLine(newvalue); treestore.SetValue(iter, 1, args.NewText); }; TargetEntry[] ten = new TargetEntry[] { new TargetEntry("tree", TargetFlags.App, 1) }; treeview1.EnableModelDragDest(ten, Gdk.DragAction.Move); treeview1.EnableModelDragSource(Gdk.ModifierType.Button1Mask, ten, Gdk.DragAction.Move); ShowAll(); treeview1.DragDataGet += (o, args) => { TreeModel model; ((TreeSelection)treeview1.Selection).GetSelected(out model, out SourceIter); args.SelectionData.Set(args.SelectionData.Target, 8, Encoding.UTF8.GetBytes(model.GetValue(SourceIter, 0).ToString())); }; treeview1.DragDataReceived += Tree_DragDataReceived; treeview1.ButtonPressEvent += Tree_ButtonPressEvent; }
public ConfirmProjectDeleteDialog(IWorkspaceFileObject item) { this.Build(); this.item = item; store = new TreeStore(typeof(bool), typeof(Xwt.Drawing.Image), typeof(string), typeof(string), typeof(string)); fileList.Model = store; TreeViewColumn col = new TreeViewColumn(); CellRendererToggle crt = new CellRendererToggle(); crt.Toggled += CrtToggled; col.PackStart(crt, false); col.AddAttribute(crt, "active", 0); CellRendererImage crp = new CellRendererImage(); col.PackStart(crp, false); col.AddAttribute(crp, "image", 1); CellRendererText cre = new CellRendererText(); col.PackStart(cre, true); col.AddAttribute(cre, "text", 2); col.AddAttribute(cre, "foreground", 4); fileList.AppendColumn(col); store.SetSortColumnId(2, SortType.Ascending); labelProjectDir.Text = item.BaseDirectory.FullPath; HashSet <string> itemFiles = new HashSet <string> (); HashSet <string> knownPaths = new HashSet <string> (); foreach (FilePath file in item.GetItemFiles(true)) { itemFiles.Add(file.FullPath); knownPaths.Add(file.FullPath + "~"); } foreach (string ext in knownExtensions) { knownPaths.Add(item.FileName.ChangeExtension(ext)); } FillDirRec(TreeIter.Zero, item, itemFiles, knownPaths, item.BaseDirectory, false); if (item.BaseDirectory != item.ItemDirectory) { // If the project has a custom base directory, make sure the project files // from the item directory are shown in the list foreach (FilePath f in item.GetItemFiles(false)) { if (!f.IsChildPathOf(item.BaseDirectory)) { var pix = IdeServices.DesktopService.GetIconForFile(f, IconSize.Menu); paths [f] = store.AppendValues(true, pix, f.FileName, f.ToString()); } } } if (item is SolutionFolderItem) { var sol = ((SolutionFolderItem)item).ParentSolution; var bdir = item.BaseDirectory; if (sol.GetItemFiles(false).Any(f => f.IsChildPathOf(bdir)) || sol.GetAllItems <SolutionItem> ().Any(it => it != item && it.GetItemFiles(true).Any(f => f.IsChildPathOf(bdir)))) { radioDeleteAll.Sensitive = false; labelProjectDir.Text = GettextCatalog.GetString("Project directory can't be deleted since it contains files from other projects or solutions"); } } if (item.BaseDirectory.FileName == item.Name && radioDeleteAll.Sensitive) { radioDeleteAll.Active = true; fileList.Sensitive = false; } else { radioDeleteSel.Active = true; Focus = radioDeleteSel; } }