From 0cc24006006c03994f4a666e7ff51f66aca816b3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jean-Philippe=20Bruy=C3=A8re?= Date: Sun, 12 Feb 2017 11:40:07 +0100 Subject: [PATCH] divers debug --- Templates/ScrollingListBox.goml | 2 +- Tests/CrowWindow.cs | 3 +++ src/GraphicObjects/ProgressBar.cs | 5 +++-- src/GraphicObjects/TemplatedGroup.cs | 4 ++-- src/Instantiator.cs | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Templates/ScrollingListBox.goml b/Templates/ScrollingListBox.goml index 142665dc..f294aea6 100644 --- a/Templates/ScrollingListBox.goml +++ b/Templates/ScrollingListBox.goml @@ -6,7 +6,7 @@ - diff --git a/Tests/CrowWindow.cs b/Tests/CrowWindow.cs index 2eae95c3..997ef002 100644 --- a/Tests/CrowWindow.cs +++ b/Tests/CrowWindow.cs @@ -183,6 +183,9 @@ namespace Crow ifaceControl [interfaceIdx].CrowInterface.AddWidget (g); return g; } + public void DeleteWidget (GraphicObject g, int interfaceIdx = 0){ + ifaceControl [interfaceIdx].CrowInterface.DeleteWidget (g); + } public GraphicObject Load (string path, int interfaceIdx = 0){ if (ifaceControl.Count == 0)//create default orthogonal interface addInterfaceControler (new InterfaceControler ( diff --git a/src/GraphicObjects/ProgressBar.cs b/src/GraphicObjects/ProgressBar.cs index 6e1ce404..50d30d01 100644 --- a/src/GraphicObjects/ProgressBar.cs +++ b/src/GraphicObjects/ProgressBar.cs @@ -26,10 +26,11 @@ namespace Crow { base.onDraw (gr); - Rectangle rBack = ClientRectangle; + if (Maximum == 0) + return; + Rectangle rBack = ClientRectangle; rBack.Width = (int)((double)rBack.Width / Maximum * Value); - Foreground.SetAsSource (gr, rBack); CairoHelpers.CairoRectangle(gr,rBack,CornerRadius); diff --git a/src/GraphicObjects/TemplatedGroup.cs b/src/GraphicObjects/TemplatedGroup.cs index 5a702122..dbc7876c 100644 --- a/src/GraphicObjects/TemplatedGroup.cs +++ b/src/GraphicObjects/TemplatedGroup.cs @@ -119,14 +119,14 @@ namespace Crow if (value == _selectedIndex) return; - if (_selectedIndex >= 0) { + if (_selectedIndex >= 0 && Items.Count > _selectedIndex) { Items[_selectedIndex].Foreground = Color.Transparent; Items[_selectedIndex].Background = Color.Transparent; } _selectedIndex = value; - if (_selectedIndex >= 0) { + if (_selectedIndex >= 0 && Items.Count > _selectedIndex) { Items[_selectedIndex].Foreground = SelectionForeground; Items[_selectedIndex].Background = SelectionBackground; } diff --git a/src/Instantiator.cs b/src/Instantiator.cs index e738a741..57e48015 100644 --- a/src/Instantiator.cs +++ b/src/Instantiator.cs @@ -803,7 +803,7 @@ namespace Crow il.Emit (OpCodes.Nop); - emitRemoveOldDataSourceHandler(il, "ValueChanged", delName); + emitRemoveOldDataSourceHandler(il, "ValueChanged", delName,false); if (!string.IsNullOrEmpty(bindingDef.TargetMember)){ if (bindingDef.TwoWay){ -- 2.47.3