From f589f15787485c297d979c898205253f5cd79445 Mon Sep 17 00:00:00 2001 From: manu Date: Mon, 23 Dec 2013 18:06:15 +0000 Subject: [PATCH] * DriverBoitierV2.cs: * DriverBoitierV2UI.cs: * DMX2.DriverBoitierV2UI.cs: Ajout parametrage boitier et 2nd univers * gui.stetic: * DMX2.EditionUnivers.cs: * UniversDMX.cs: Ajout fonctions log et exp * EditionUnivers.cs: Modif gestion param 1 et 2 --- DMX-2.0/DriverBoitierV2.cs | 114 +++++++++---- DMX-2.0/DriverBoitierV2UI.cs | 27 ++++ DMX-2.0/EditionUnivers.cs | 45 +++--- DMX-2.0/UniversDMX.cs | 13 +- DMX-2.0/gtk-gui/DMX2.DriverBoitierV2UI.cs | 186 +++++++++++---------- DMX-2.0/gtk-gui/DMX2.EditionUnivers.cs | 4 +- DMX-2.0/gtk-gui/gui.stetic | 187 +++++++++++----------- 7 files changed, 337 insertions(+), 239 deletions(-) diff --git a/DMX-2.0/DriverBoitierV2.cs b/DMX-2.0/DriverBoitierV2.cs index ab7a1b7..a9faf20 100644 --- a/DMX-2.0/DriverBoitierV2.cs +++ b/DMX-2.0/DriverBoitierV2.cs @@ -29,7 +29,7 @@ namespace DMX2 // tampons Entrée/Sortie public byte[] inputbuffer = new byte[532]; - byte[] outputbuffer = new byte[514]; + byte[] outputbuffer = new byte[1026]; //Thread de boucle Thread loopthread=null; @@ -41,14 +41,43 @@ namespace DMX2 SerialPort serial = null; - int break1 = 150; - int break2 = 150; - - int mab1 = 50; - int mab2 = 50; - + int brk = 150; + int mab = 50; int nbc1 = 512; - int nbc2 = 512; + byte flag_merge1 = 1; + byte flag_merge2 = 1; + + bool reinit=false ; + + + + public void ReInit () { + reinit=true; + } + + public int Break { + get { + return brk; + } + } + + public int Mab { + get { + return mab; + } + } + + public byte Flag_merge1 { + get { + return flag_merge1; + } + } + + public byte Flag_merge2 { + get { + return flag_merge2; + } + } public DriverBoitierV2 (string serialport, string id): base(id) { @@ -61,20 +90,15 @@ namespace DMX2 bool paramFlag = false; - public void SetBreak1( int brk, int mab) + public void SetBreak( int _brk, int _mab, byte _merge1, byte _merge2) { - break1 = brk; - mab1 = mab; + brk = _brk; + mab = _mab; + flag_merge1 = _merge1; + flag_merge2 = _merge2; paramFlag = true; } - public void SetBreak2( int brk, int mab) - { - break2 = brk; - mab2 = mab; - paramFlag = true; - } - void Start () { if (loopthread == null) { @@ -116,7 +140,7 @@ namespace DMX2 /// bool Synchronisation () { - return true; + //return true; if (serial == null) @@ -124,9 +148,9 @@ namespace DMX2 if (!serial.IsOpen) return false; - // Au cas ou le boitier attends une fin de commande : envoi 520 octets a 0 (le boitier ignorera tout seul la suite) - byte[] tmpBuffer = new byte[520]; - serial.Write (tmpBuffer, 0, 520); + // Au cas ou le boitier attends une fin de commande : envoi 1030 octets a 0 (le boitier ignorera tout seul la suite) + byte[] tmpBuffer = new byte[1030]; + serial.Write (tmpBuffer, 0, 1030); // On attends un peu Thread.Sleep (300); @@ -173,6 +197,8 @@ namespace DMX2 Attente (finAttente); if (paramFlag) Parametrage (); + if (reinit) + EnvoieReInit(); break; case etatAutomate.Erreur: compteErreur ++; @@ -229,9 +255,8 @@ namespace DMX2 } if(patch1!=null) patch1.CalculUnivers(outputbuffer,2,512); - + if(patch2!=null) patch2.CalculUnivers(outputbuffer,514,512); serial.Write(outputbuffer,0,outputbuffer.Length); - } catch (Exception ex) { Console.WriteLine("Exception Envoi {0}",ex); etat = etatAutomate.Erreur; @@ -257,7 +282,7 @@ namespace DMX2 // { // throw new NotImplementedException (); // } - + byte flag_input; void Reception () { try { @@ -274,7 +299,10 @@ namespace DMX2 } serial.Read(inputbuffer,0,inputbuffer.Length); - + if (flag_input != inputbuffer[0]) { + flag_input = inputbuffer[0]; + Console.WriteLine(flag_input ); + } if(serial.BytesToRead>0) serial.ReadExisting (); @@ -295,7 +323,7 @@ namespace DMX2 return; } - byte[] tmpBuffer = new byte[5]; + byte[] tmpBuffer = new byte[6]; tmpBuffer [0] = 27; // Esc tmpBuffer [1] = 66; // 'B' @@ -303,8 +331,10 @@ namespace DMX2 tmpBuffer [2] = // nb circuits (byte)(nbc1 / 2 - 1); - tmpBuffer [3] = (byte)break1; - tmpBuffer [4] = (byte)mab1; + tmpBuffer [3] = (byte)brk; + tmpBuffer [4] = (byte)mab; + + tmpBuffer [5] = (byte) (flag_merge1 + flag_merge2 * 2); serial.Write (tmpBuffer, 0, tmpBuffer.Length); @@ -319,6 +349,32 @@ namespace DMX2 } + void EnvoieReInit() + { + reinit = false; + + if (!serial.IsOpen) { + etat = etatAutomate.Erreur; + return; + } + + byte[] tmpBuffer = new byte[2]; + + tmpBuffer [0] = 27; // Esc + tmpBuffer [1] = 67; // 'B' + + serial.Write (tmpBuffer, 0, tmpBuffer.Length); + + if(!WaitForData (1)) { + etat = etatAutomate.Erreur; + return ; + } + + serial.Read(tmpBuffer,0,1); + if(tmpBuffer[0] != 67) + etat = etatAutomate.Erreur; + } + void ProcessInput () { byte b = 1; bool pressed; diff --git a/DMX-2.0/DriverBoitierV2UI.cs b/DMX-2.0/DriverBoitierV2UI.cs index 41391eb..335f350 100644 --- a/DMX-2.0/DriverBoitierV2UI.cs +++ b/DMX-2.0/DriverBoitierV2UI.cs @@ -20,6 +20,12 @@ namespace DMX2 ListStore lsCbUnivers2 = new ListStore(typeof(UniversDMX)); void ConstruitCBUnivers () { + caseBrk.Text = drv.Break.ToString(); + caseMab.Text = drv.Mab.ToString(); + + chkMerge1.Active = drv.Flag_merge1 == 1; + chkMerge2.Active = drv.Flag_merge2 == 1; + cbUnivers1.Model = lsCbUnivers1; var cellCbUnivers1 = new CellRendererText(); cbUnivers1.PackStart(cellCbUnivers1,false); @@ -72,9 +78,30 @@ namespace DMX2 drv.patch2 = lsCbUnivers2.GetValue (iter, 0) as UniversDMX; } + int a, b; + if (!int.TryParse (caseBrk.Text, out a)) + return; + if (!int.TryParse (caseMab.Text, out b)) + return; + if (a < 92) { + a = 92; + } + if (b < 12) { + b = 12; + } + drv.SetBreak(a,b, + (byte)(chkMerge1.Active?1:0), + (byte)(chkMerge2.Active?1:0)); + + } + + protected void OnBtnInitClicked (object sender, EventArgs e) + { + drv.ReInit(); } + } } diff --git a/DMX-2.0/EditionUnivers.cs b/DMX-2.0/EditionUnivers.cs index ff3bcf9..b701efb 100644 --- a/DMX-2.0/EditionUnivers.cs +++ b/DMX-2.0/EditionUnivers.cs @@ -273,6 +273,7 @@ namespace DMX2 universEdite.Dimmers[i].circuitAssocié = Conduite.Courante.Circuits[i]; universEdite.Dimmers[i].fonctionTransfert = UniversDMX.FTransfer.lineaire; universEdite.Dimmers[i].param1 = 100; + universEdite.Dimmers[i].param2 = 500; } MajListeDimmer(); } @@ -299,27 +300,6 @@ namespace DMX2 } } - protected void OnTxtParam1FocusOutEvent (object o, FocusOutEventArgs args) - { - if (majencour) - return; - float p1; - if (float.TryParse (txtParam1.Text, out p1)) { - universEdite.Dimmers [currDimm].param1 = p1; - MajListeDimmer (); - } - } - - protected void OnTxtParam2FocusOutEvent (object o, FocusOutEventArgs args) - { - if (majencour) - return; - float p2; - if (float.TryParse (txtParam2.Text, out p2)) { - universEdite.Dimmers [currDimm].param2 = p2; - MajListeDimmer (); - } - } ListStore lsCircuits = new ListStore(typeof(Circuit)); @@ -421,8 +401,31 @@ namespace DMX2 if (majencour) return; universEdite.AllumageForce[currDimm] = btAllume.Active; + } + protected void OnTxtParam1Changed (object sender, EventArgs e) + { + if (majencour) + return; + float p1; + if (float.TryParse (txtParam1.Text, out p1)) { + universEdite.Dimmers [currDimm].param1 = p1; + MajListeDimmer (); + } + } + + protected void OnTxtParam2Changed (object sender, EventArgs e) + { + if (majencour) + return; + float p2; + if (float.TryParse (txtParam2.Text, out p2)) { + universEdite.Dimmers [currDimm].param2 = p2; + MajListeDimmer (); + } } + + } } diff --git a/DMX-2.0/UniversDMX.cs b/DMX-2.0/UniversDMX.cs index cf05936..d57800d 100644 --- a/DMX-2.0/UniversDMX.cs +++ b/DMX-2.0/UniversDMX.cs @@ -31,6 +31,7 @@ namespace DMX2 { _dimmers[i].fonctionTransfert = FTransfer.lineaire; _dimmers[i].param1 = 100; + _dimmers[i].param2 = 500; } } @@ -66,6 +67,7 @@ namespace DMX2 public void CalculUnivers(byte[] valeurs, int offset, int count) { Dimmer g; + double val; Debug.Assert(valeurs.Length == _dimmers.Length); for(int i = 0 ; i255?255:val); break; case FTransfer.log: - // TODO : Ft Log + val=Math.Log10(g.circuitAssocié.ValeurCourante/g.param2+1)/Math.Log10(255/g.param2+1); + val = val * 255 * g.param1 /100; + valeurs[i+offset] = (byte)(val>255?255:val); break; case FTransfer.exp: - // TODO : Ft Exp + val=(Math.Exp(g.circuitAssocié.ValeurCourante/g.param2)-1)/(Math.Exp(255/g.param2)-1); + val = val * 255 * g.param1 /100; + valeurs[i+offset] = (byte)(val>255?255:val); break; default: throw new ArgumentOutOfRangeException (); diff --git a/DMX-2.0/gtk-gui/DMX2.DriverBoitierV2UI.cs b/DMX-2.0/gtk-gui/DMX2.DriverBoitierV2UI.cs index e121094..14975ea 100644 --- a/DMX-2.0/gtk-gui/DMX2.DriverBoitierV2UI.cs +++ b/DMX-2.0/gtk-gui/DMX2.DriverBoitierV2UI.cs @@ -7,22 +7,22 @@ namespace DMX2 private global::Gtk.VBox vbox2; private global::Gtk.Label label1; private global::Gtk.Table table1; + private global::Gtk.Entry caseBrk; + private global::Gtk.Entry caseMab; private global::Gtk.ComboBox cbUnivers1; private global::Gtk.ComboBox cbUnivers2; - private global::Gtk.Entry entry1; - private global::Gtk.Entry entry2; - private global::Gtk.Entry entry3; - private global::Gtk.Entry entry4; + private global::Gtk.CheckButton chkMerge1; + private global::Gtk.CheckButton chkMerge2; private global::Gtk.Label label2; private global::Gtk.Label label3; private global::Gtk.Label label4; private global::Gtk.Label label5; private global::Gtk.Label label6; private global::Gtk.Label label7; - private global::Gtk.Label labVal; - private global::Gtk.Label labVerif; + private global::Gtk.Label label8; private global::Gtk.HBox hbox1; private global::Gtk.Button button120; + private global::Gtk.Button btnInit; protected virtual void Build () { @@ -44,86 +44,88 @@ namespace DMX2 w1.Expand = false; w1.Fill = false; // Container child vbox2.Gtk.Box+BoxChild - this.table1 = new global::Gtk.Table (((uint)(4)), ((uint)(4)), false); + this.table1 = new global::Gtk.Table (((uint)(4)), ((uint)(5)), false); this.table1.Name = "table1"; this.table1.RowSpacing = ((uint)(6)); this.table1.ColumnSpacing = ((uint)(6)); // Container child table1.Gtk.Table+TableChild + this.caseBrk = new global::Gtk.Entry (); + this.caseBrk.CanFocus = true; + this.caseBrk.Name = "caseBrk"; + this.caseBrk.IsEditable = true; + this.caseBrk.InvisibleChar = '•'; + this.table1.Add (this.caseBrk); + global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1 [this.caseBrk])); + w2.TopAttach = ((uint)(1)); + w2.BottomAttach = ((uint)(2)); + w2.LeftAttach = ((uint)(2)); + w2.RightAttach = ((uint)(3)); + w2.XOptions = ((global::Gtk.AttachOptions)(4)); + w2.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table1.Gtk.Table+TableChild + this.caseMab = new global::Gtk.Entry (); + this.caseMab.CanFocus = true; + this.caseMab.Name = "caseMab"; + this.caseMab.IsEditable = true; + this.caseMab.InvisibleChar = '•'; + this.table1.Add (this.caseMab); + global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1 [this.caseMab])); + w3.TopAttach = ((uint)(1)); + w3.BottomAttach = ((uint)(2)); + w3.LeftAttach = ((uint)(3)); + w3.RightAttach = ((uint)(4)); + w3.XOptions = ((global::Gtk.AttachOptions)(4)); + w3.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table1.Gtk.Table+TableChild this.cbUnivers1 = global::Gtk.ComboBox.NewText (); this.cbUnivers1.Name = "cbUnivers1"; this.table1.Add (this.cbUnivers1); - global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1 [this.cbUnivers1])); - w2.TopAttach = ((uint)(1)); - w2.BottomAttach = ((uint)(2)); - w2.LeftAttach = ((uint)(1)); - w2.RightAttach = ((uint)(2)); - w2.XOptions = ((global::Gtk.AttachOptions)(4)); - w2.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1 [this.cbUnivers1])); + w4.TopAttach = ((uint)(1)); + w4.BottomAttach = ((uint)(2)); + w4.LeftAttach = ((uint)(1)); + w4.RightAttach = ((uint)(2)); + w4.XOptions = ((global::Gtk.AttachOptions)(4)); + w4.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.cbUnivers2 = global::Gtk.ComboBox.NewText (); this.cbUnivers2.Name = "cbUnivers2"; this.table1.Add (this.cbUnivers2); - global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1 [this.cbUnivers2])); - w3.TopAttach = ((uint)(2)); - w3.BottomAttach = ((uint)(3)); - w3.LeftAttach = ((uint)(1)); - w3.RightAttach = ((uint)(2)); - w3.XOptions = ((global::Gtk.AttachOptions)(4)); - w3.YOptions = ((global::Gtk.AttachOptions)(4)); - // Container child table1.Gtk.Table+TableChild - this.entry1 = new global::Gtk.Entry (); - this.entry1.CanFocus = true; - this.entry1.Name = "entry1"; - this.entry1.IsEditable = true; - this.entry1.InvisibleChar = '•'; - this.table1.Add (this.entry1); - global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1 [this.entry1])); - w4.TopAttach = ((uint)(1)); - w4.BottomAttach = ((uint)(2)); - w4.LeftAttach = ((uint)(2)); - w4.RightAttach = ((uint)(3)); - w4.XOptions = ((global::Gtk.AttachOptions)(4)); - w4.YOptions = ((global::Gtk.AttachOptions)(4)); - // Container child table1.Gtk.Table+TableChild - this.entry2 = new global::Gtk.Entry (); - this.entry2.CanFocus = true; - this.entry2.Name = "entry2"; - this.entry2.IsEditable = true; - this.entry2.InvisibleChar = '•'; - this.table1.Add (this.entry2); - global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1 [this.entry2])); - w5.TopAttach = ((uint)(1)); - w5.BottomAttach = ((uint)(2)); - w5.LeftAttach = ((uint)(3)); - w5.RightAttach = ((uint)(4)); + global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1 [this.cbUnivers2])); + w5.TopAttach = ((uint)(2)); + w5.BottomAttach = ((uint)(3)); + w5.LeftAttach = ((uint)(1)); + w5.RightAttach = ((uint)(2)); w5.XOptions = ((global::Gtk.AttachOptions)(4)); w5.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild - this.entry3 = new global::Gtk.Entry (); - this.entry3.CanFocus = true; - this.entry3.Name = "entry3"; - this.entry3.IsEditable = true; - this.entry3.InvisibleChar = '•'; - this.table1.Add (this.entry3); - global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table1 [this.entry3])); - w6.TopAttach = ((uint)(2)); - w6.BottomAttach = ((uint)(3)); - w6.LeftAttach = ((uint)(2)); - w6.RightAttach = ((uint)(3)); + this.chkMerge1 = new global::Gtk.CheckButton (); + this.chkMerge1.CanFocus = true; + this.chkMerge1.Name = "chkMerge1"; + this.chkMerge1.Label = ""; + this.chkMerge1.DrawIndicator = true; + this.chkMerge1.UseUnderline = true; + this.table1.Add (this.chkMerge1); + global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table1 [this.chkMerge1])); + w6.TopAttach = ((uint)(1)); + w6.BottomAttach = ((uint)(2)); + w6.LeftAttach = ((uint)(4)); + w6.RightAttach = ((uint)(5)); w6.XOptions = ((global::Gtk.AttachOptions)(4)); w6.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild - this.entry4 = new global::Gtk.Entry (); - this.entry4.CanFocus = true; - this.entry4.Name = "entry4"; - this.entry4.IsEditable = true; - this.entry4.InvisibleChar = '•'; - this.table1.Add (this.entry4); - global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table1 [this.entry4])); + this.chkMerge2 = new global::Gtk.CheckButton (); + this.chkMerge2.CanFocus = true; + this.chkMerge2.Name = "chkMerge2"; + this.chkMerge2.Label = ""; + this.chkMerge2.DrawIndicator = true; + this.chkMerge2.UseUnderline = true; + this.table1.Add (this.chkMerge2); + global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table1 [this.chkMerge2])); w7.TopAttach = ((uint)(2)); w7.BottomAttach = ((uint)(3)); - w7.LeftAttach = ((uint)(3)); - w7.RightAttach = ((uint)(4)); + w7.LeftAttach = ((uint)(4)); + w7.RightAttach = ((uint)(5)); w7.XOptions = ((global::Gtk.AttachOptions)(4)); w7.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild @@ -185,34 +187,18 @@ namespace DMX2 w13.XOptions = ((global::Gtk.AttachOptions)(4)); w13.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild - this.labVal = new global::Gtk.Label (); - this.labVal.Name = "labVal"; - this.labVal.LabelProp = "0"; - this.table1.Add (this.labVal); - global::Gtk.Table.TableChild w14 = ((global::Gtk.Table.TableChild)(this.table1 [this.labVal])); - w14.TopAttach = ((uint)(3)); - w14.BottomAttach = ((uint)(4)); - w14.LeftAttach = ((uint)(2)); - w14.RightAttach = ((uint)(3)); + this.label8 = new global::Gtk.Label (); + this.label8.Name = "label8"; + this.label8.LabelProp = "Merge"; + this.table1.Add (this.label8); + global::Gtk.Table.TableChild w14 = ((global::Gtk.Table.TableChild)(this.table1 [this.label8])); + w14.LeftAttach = ((uint)(4)); + w14.RightAttach = ((uint)(5)); w14.XOptions = ((global::Gtk.AttachOptions)(4)); w14.YOptions = ((global::Gtk.AttachOptions)(4)); - // Container child table1.Gtk.Table+TableChild - this.labVerif = new global::Gtk.Label (); - this.labVerif.Name = "labVerif"; - this.labVerif.LabelProp = "Vérif"; - this.table1.Add (this.labVerif); - global::Gtk.Table.TableChild w15 = ((global::Gtk.Table.TableChild)(this.table1 [this.labVerif])); - w15.TopAttach = ((uint)(3)); - w15.BottomAttach = ((uint)(4)); - w15.LeftAttach = ((uint)(1)); - w15.RightAttach = ((uint)(2)); - w15.XOptions = ((global::Gtk.AttachOptions)(4)); - w15.YOptions = ((global::Gtk.AttachOptions)(4)); this.vbox2.Add (this.table1); - global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.table1])); - w16.Position = 1; - w16.Expand = false; - w16.Fill = false; + global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.table1])); + w15.Position = 1; // Container child vbox2.Gtk.Box+BoxChild this.hbox1 = new global::Gtk.HBox (); this.hbox1.Name = "hbox1"; @@ -224,8 +210,19 @@ namespace DMX2 this.button120.UseUnderline = true; this.button120.Label = "Valider"; this.hbox1.Add (this.button120); - global::Gtk.Box.BoxChild w17 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.button120])); - w17.Position = 1; + global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.button120])); + w16.Position = 1; + w16.Expand = false; + w16.Fill = false; + // Container child hbox1.Gtk.Box+BoxChild + this.btnInit = new global::Gtk.Button (); + this.btnInit.CanFocus = true; + this.btnInit.Name = "btnInit"; + this.btnInit.UseUnderline = true; + this.btnInit.Label = "Init Boitier"; + this.hbox1.Add (this.btnInit); + global::Gtk.Box.BoxChild w17 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.btnInit])); + w17.Position = 2; w17.Expand = false; w17.Fill = false; this.vbox2.Add (this.hbox1); @@ -240,6 +237,7 @@ namespace DMX2 } this.Hide (); this.button120.Clicked += new global::System.EventHandler (this.OnButton120Clicked); + this.btnInit.Clicked += new global::System.EventHandler (this.OnBtnInitClicked); } } } diff --git a/DMX-2.0/gtk-gui/DMX2.EditionUnivers.cs b/DMX-2.0/gtk-gui/DMX2.EditionUnivers.cs index c0f319f..079d2d0 100644 --- a/DMX-2.0/gtk-gui/DMX2.EditionUnivers.cs +++ b/DMX-2.0/gtk-gui/DMX2.EditionUnivers.cs @@ -380,8 +380,8 @@ namespace DMX2 this.spinDimmer.ValueChanged += new global::System.EventHandler (this.OnSpinDimmerValueChanged); this.cbCircuit.Changed += new global::System.EventHandler (this.OnCbCircuitChanged); this.cbFT.Changed += new global::System.EventHandler (this.OnCbFTChanged); - this.txtParam1.FocusOutEvent += new global::Gtk.FocusOutEventHandler (this.OnTxtParam1FocusOutEvent); - this.txtParam2.FocusOutEvent += new global::Gtk.FocusOutEventHandler (this.OnTxtParam2FocusOutEvent); + this.txtParam1.Changed += new global::System.EventHandler (this.OnTxtParam1Changed); + this.txtParam2.Changed += new global::System.EventHandler (this.OnTxtParam2Changed); this.tvDimm.CursorChanged += new global::System.EventHandler (this.OnTvDimmCursorChanged); this.buttonCancel.Clicked += new global::System.EventHandler (this.OnButtonCancelClicked); } diff --git a/DMX-2.0/gtk-gui/gui.stetic b/DMX-2.0/gtk-gui/gui.stetic index 095aa0f..8bae5ea 100644 --- a/DMX-2.0/gtk-gui/gui.stetic +++ b/DMX-2.0/gtk-gui/gui.stetic @@ -1453,7 +1453,7 @@ au sequenceur True True - + 6 @@ -1478,7 +1478,7 @@ au sequenceur True True - + 8 @@ -2135,7 +2135,7 @@ au sequenceur - + False @@ -2158,7 +2158,7 @@ au sequenceur 4 - 4 + 5 6 6 @@ -2167,6 +2167,67 @@ au sequenceur + + + + + + + + + + + + + + + + + + + True + True + + + + 1 + 2 + 2 + 3 + True + Fill + Fill + False + True + False + False + True + False + + + + + + True + True + + + + 1 + 2 + 3 + 4 + True + Fill + Fill + False + True + False + False + True + False + + @@ -2212,17 +2273,19 @@ au sequenceur - + True - True - + + True + True + True 1 2 - 2 - 3 + 4 + 5 True Fill Fill @@ -2235,63 +2298,19 @@ au sequenceur - + True - True - - - - 1 - 2 - 3 - 4 - True - Fill - Fill - False - True - False - False - True - False - - - - - - True - True - + + True + True + True 2 3 - 2 - 3 - True - Fill - Fill - False - True - False - False - True - False - - - - - - True - True - - - - 2 - 3 - 3 - 4 + 4 + 5 True Fill Fill @@ -2416,36 +2435,13 @@ au sequenceur - + - 0 + Merge - 3 - 4 - 2 - 3 - True - Fill - Fill - False - True - False - False - True - False - - - - - - Vérif - - - 3 - 4 - 1 - 2 + 4 + 5 True Fill Fill @@ -2461,8 +2457,6 @@ au sequenceur 1 True - False - False @@ -2489,7 +2483,20 @@ au sequenceur - + + + True + TextOnly + Init Boitier + True + + + + 2 + True + False + False +