78 lines
2 KiB
C#
78 lines
2 KiB
C#
using System;
|
|
|
|
namespace DMX2
|
|
{
|
|
public partial class GestionCircuits : Gtk.Dialog
|
|
{
|
|
Gtk.ListStore ls;
|
|
public GestionCircuits ()
|
|
{
|
|
this.Build ();
|
|
Gtk.TreeViewColumn nameCol = new Gtk.TreeViewColumn();
|
|
Gtk.CellRendererText nameCell = new Gtk.CellRendererText();
|
|
nameCol.Title = "Circuit";
|
|
nameCol.PackStart(nameCell,true);
|
|
nameCol.SetCellDataFunc(nameCell, new Gtk.TreeCellDataFunc(
|
|
new Gtk.TreeCellDataFunc(RenderCircuitName)
|
|
));
|
|
|
|
nameCell.Editable =true;
|
|
nameCell.Edited += OnNameCellEdited;
|
|
|
|
this.listeCircuits.AppendColumn(nameCol);
|
|
|
|
ls = new Gtk.ListStore(typeof (Circuit));
|
|
this.listeCircuits.Model = ls;
|
|
UpdateListeCircuits();
|
|
listeCircuits.Selection.Mode = Gtk.SelectionMode.Multiple;
|
|
}
|
|
|
|
void OnNameCellEdited (object o, Gtk.EditedArgs args)
|
|
{
|
|
Gtk.TreeIter iter;
|
|
ls.GetIter (out iter, new Gtk.TreePath (args.Path));
|
|
Circuit c = ls.GetValue(iter,0) as Circuit;
|
|
c.Name = args.NewText;
|
|
|
|
}
|
|
|
|
private void RenderCircuitName(Gtk.TreeViewColumn tree_column, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter) {
|
|
Circuit c = tree_model.GetValue (iter, 0) as Circuit;
|
|
(cell as Gtk.CellRendererText).Text = c.Name;
|
|
}
|
|
|
|
protected void UpdateListeCircuits ()
|
|
{
|
|
ls.Clear();
|
|
foreach(Circuit c in Conduite.Courante.Circuits)
|
|
ls.AppendValues(c);
|
|
}
|
|
|
|
protected void OnAddActionActivated (object sender, EventArgs e)
|
|
{
|
|
|
|
Gtk.Dialog dlg = new Gtk.Dialog("Test", this, Gtk.DialogFlags.DestroyWithParent);
|
|
Gtk.VBox vb = new Gtk.VBox();
|
|
var etry = new Gtk.Entry();
|
|
dlg.Add(vb);
|
|
vb.Add(etry);
|
|
vb.Add(dlg.AddButton("Close",Gtk.ResponseType.Close));
|
|
dlg.Run ();
|
|
dlg.Destroy();
|
|
|
|
Conduite.Courante.NouveauCircuit();
|
|
UpdateListeCircuits();
|
|
|
|
}
|
|
protected void OnRemoveActionActivated (object sender, EventArgs e)
|
|
{
|
|
throw new System.NotImplementedException ();
|
|
}
|
|
|
|
protected void OnResp (object o, Gtk.ResponseArgs args)
|
|
{
|
|
Hide ();
|
|
Destroy();
|
|
}
|
|
}
|
|
}
|