]> O.S.I.I.S - jp/crow.git/commitdiff
Improve update queuing
authorjpbruyere <jp.bruyere@hotmail.com>
Mon, 1 Aug 2016 10:45:27 +0000 (12:45 +0200)
committerjpbruyere <jp.bruyere@hotmail.com>
Mon, 1 Aug 2016 10:47:47 +0000 (12:47 +0200)
modifié :         src/GraphicObjects/GenericStack.cs
modifié :         src/GraphicObjects/GraphicObject.cs
modifié :         src/GraphicObjects/Group.cs
modifié :         src/GraphicObjects/Label.cs
modifié :         src/GraphicObjects/ListBox.cs
modifié :         src/GraphicObjects/TabView.cs
modifié :         src/Interface.cs
modifié :         src/StyleReader.cs

tests updates
modifié :         Tests/BasicTests.cs
modifié :         Tests/Interfaces/Divers/testWindow.goml
modifié :         Tests/Interfaces/Divers/welcome.crow
modifié :         Tests/Interfaces/Expandable/0.crow
renommé :         Tests/Interfaces/Nouveau dossier/test4.1.crow -> Tests/Interfaces/Unsorted/test4.1.crow
renommé :         Tests/Interfaces/Nouveau dossier/test4.crow -> Tests/Interfaces/Unsorted/test4.crow
renommé :         Tests/Interfaces/Nouveau dossier/test6.crow -> Tests/Interfaces/Unsorted/test6.crow
renommé :         Tests/Interfaces/Nouveau dossier/testColorList.crow -> Tests/Interfaces/Unsorted/testColorList.crow
renommé :         Tests/Interfaces/Nouveau dossier/testDirViewer.crow -> Tests/Interfaces/Unsorted/testDirViewer.crow
renommé :         Tests/Interfaces/Nouveau dossier/testFileDialog.goml -> Tests/Interfaces/Unsorted/testFileDialog.goml
renommé :         Tests/Interfaces/Nouveau dossier/testImage.crow -> Tests/Interfaces/Unsorted/testImage.crow
renommé :         Tests/Interfaces/Nouveau dossier/testLabel.crow -> Tests/Interfaces/Unsorted/testLabel.crow
renommé :         Tests/Interfaces/Nouveau dossier/testMsgBox.crow -> Tests/Interfaces/Unsorted/testMsgBox.crow
renommé :         Tests/Interfaces/Nouveau dossier/testOutOfClipUpdate.crow -> Tests/Interfaces/Unsorted/testOutOfClipUpdate.crow
renommé :         Tests/Interfaces/Nouveau dossier/testRadioButton2.crow -> Tests/Interfaces/Unsorted/testRadioButton2.crow
renommé :         Tests/Interfaces/Nouveau dossier/testTabView.crow -> Tests/Interfaces/Unsorted/testTabView.crow
renommé :         Tests/Interfaces/Nouveau dossier/testTreeView.crow -> Tests/Interfaces/Unsorted/testTreeView.crow
renommé :         Tests/Interfaces/Nouveau dossier/testTypeViewer.goml -> Tests/Interfaces/Unsorted/testTypeViewer.goml
modifié :         Tests/Tests.csproj

42 files changed:
Tests/BasicTests.cs
Tests/Interfaces/Divers/testWindow.goml
Tests/Interfaces/Divers/welcome.crow
Tests/Interfaces/Expandable/0.crow
Tests/Interfaces/Nouveau dossier/test4.1.crow [deleted file]
Tests/Interfaces/Nouveau dossier/test4.crow [deleted file]
Tests/Interfaces/Nouveau dossier/test6.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testColorList.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testDirViewer.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testFileDialog.goml [deleted file]
Tests/Interfaces/Nouveau dossier/testImage.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testLabel.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testMsgBox.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testOutOfClipUpdate.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testRadioButton2.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testTabView.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testTreeView.crow [deleted file]
Tests/Interfaces/Nouveau dossier/testTypeViewer.goml [deleted file]
Tests/Interfaces/Unsorted/test4.1.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/test4.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/test6.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testColorList.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testDirViewer.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testFileDialog.goml [new file with mode: 0644]
Tests/Interfaces/Unsorted/testImage.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testLabel.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testMsgBox.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testOutOfClipUpdate.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testRadioButton2.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testTabView.crow [new file with mode: 0644]
Tests/Interfaces/Unsorted/testTreeView.crow [new file with mode: 0755]
Tests/Interfaces/Unsorted/testTypeViewer.goml [new file with mode: 0755]
Tests/Tests.csproj
Tests/ui/test.style [new file with mode: 0644]
src/GraphicObjects/GenericStack.cs
src/GraphicObjects/GraphicObject.cs
src/GraphicObjects/Group.cs
src/GraphicObjects/Label.cs
src/GraphicObjects/ListBox.cs
src/GraphicObjects/TabView.cs
src/Interface.cs
src/StyleReader.cs

index 1382d739dd2a37af67604ad0efdeed2cec48ccee..582586349a65f67b674edcdeac36bb2e83c8561b 100644 (file)
@@ -10,7 +10,7 @@ namespace Tests
        class BasicTests : OpenTKGameWindow
        {
                public BasicTests ()
-                       : base(800, 600,"test: press spacebar to toogle test files")
+                       : base(800, 600,"test: press <F3> to toogle test files")
                {
                }
 
@@ -76,40 +76,42 @@ namespace Tests
                {
                        base.OnLoad (e);
 
-                       KeyboardKeyDown += GOLIBTests_KeyboardKeyDown1;
+                       this.KeyDown += KeyboardKeyDown1;
 
                        testFiles = new string [] { @"Interfaces/Divers/welcome.crow" };
-                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/GraphicObject", "*.crow")).ToArray ();
+                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Unsorted", "*.crow")).ToArray ();
+                       //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/GraphicObject", "*.crow")).ToArray ();
                        //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/basicTests", "*.crow")).ToArray ();
-                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Container", "*.crow")).ToArray ();
-                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Group", "*.crow")).ToArray ();
-                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Stack", "*.crow")).ToArray ();
-                       testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Splitter", "*.crow")).ToArray ();
+                       //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Container", "*.crow")).ToArray ();
+                       //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Group", "*.crow")).ToArray ();
+                       //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Stack", "*.crow")).ToArray ();
+                       //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Splitter", "*.crow")).ToArray ();
                        testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Expandable", "*.crow")).ToArray ();
                        testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Divers", "*.crow")).ToArray ();
 
-                       this.Title = testFiles [idx] + ". Press key to switch example.";
+                       this.Title = testFiles [idx] + ". Press <F3> to switch example.";
                        CrowInterface.LoadInterface(testFiles[idx]).DataSource = this;
                }
-               void GOLIBTests_KeyboardKeyDown1 (object sender, OpenTK.Input.KeyboardKeyEventArgs e)
+               void KeyboardKeyDown1 (object sender, OpenTK.Input.KeyboardKeyEventArgs e)
                {
                        if (e.Key == OpenTK.Input.Key.Escape) {
                                Quit (null, null);
                                return;
-                       } else if (e.Key == OpenTK.Input.Key.L) {
+                       } else if (e.Key == OpenTK.Input.Key.F1) {
                                TestList.Add ("new string");
                                NotifyValueChanged ("TestList", TestList);
                                return;
-                       } else if (e.Key == OpenTK.Input.Key.W) {
-                               GraphicObject w = CrowInterface.LoadInterface("Interfaces/testWindow.goml");
+                       } else if (e.Key == OpenTK.Input.Key.F2) {
+                               GraphicObject w = CrowInterface.LoadInterface ("Interfaces/Divers/testWindow.goml");
                                w.DataSource = this;
                                return;
-                       }
+                       } else if (e.Key != OpenTK.Input.Key.F3)
+                               return;
                        CrowInterface.ClearInterface ();
                        idx++;
                        if (idx == testFiles.Length)
                                idx = 0;
-                       this.Title = testFiles [idx] + ". Press key to cycle examples.";
+                       this.Title = testFiles [idx] + ". Press <F3> to cycle examples.";
                        GraphicObject obj = CrowInterface.LoadInterface(testFiles[idx]);
                        obj.DataSource = this;
                }
index 9e184dff0d720e13f9b972faa0792e75647767ac..09db61933ac138a3e7ca835833343a2d87217f40 100755 (executable)
@@ -16,7 +16,7 @@
                        <GraphicObject Width="Stretched"/>
                        <RadioButton Width="80" Height="Fit" Caption="Radio 3" />
                </HorizontalStack>
-               <HorizontalStack Width="Stretched" Height="Stretched" MinimumSize="10,10" Margin="10" CornerRadius="5"
+               <HorizontalStack Width="Stretched" Height="Stretched" MinimumSize="10,40" Margin="0" CornerRadius="5"
                                Background="vgradient|0:White|0.1:SteelBlue|0.9:SteelBlue|1:Transparent">
                        <CheckBox Height="Fit" Width="80"/>
                        <GraphicObject Width="Stretched"/>
index 504413a1884a13ce7003bae37438b40ef1db0af2..8a98b380c296a9feb9a22b95426454ec3c474c8c 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
 <VerticalStack>
-       <Label Text="Press a key to cycle into the examples"/>
+       <Label Text="Press &lt;F3&gt; to cycle into the examples"/>
        <Label Text="Those are basic tests used to validate changes"/>
 </VerticalStack>
\ No newline at end of file
index d243e67ec2b62065f159be46d8c4152b927b3bd7..0c37d3357be41f5a1db6dcd7f7f6a677ad84a149 100755 (executable)
@@ -1,11 +1,11 @@
 <?xml version="1.0"?>
 <Expandable Fit="true" Caption="Test expandable" Background="DimGray">
-               <VerticalStack Margin="5" Background="Green" Fit="true">
-                       <CheckBox Name="chk1" Background="Red" Fit="true"/>
-                       <CheckBox Name="chk2" IsChecked="true" Fit="true"/>
-                       <CheckBox Name="chk3" Fit="true"/>
-                       <CheckBox Name="chk4" Fit="true"/>
-                       <HorizontalStack Fit="true" Margin="2" Background="Blue">
+               <VerticalStack Margin="5" >
+                       <CheckBox Name="chk1" />
+                       <CheckBox Name="chk2" IsChecked="true"/>
+                       <CheckBox Name="chk3" />
+                       <CheckBox Name="chk4" />
+                       <HorizontalStack Fit="true" Margin="2" Background="Mantis">
                                <Label Name="captionFps" Text="Fps:" Width="30" TextAlignment="Right"/>
                                <Label Name="valueFps" Text="{fps}" Font="droid , 12" Width="Fit" TextAlignment="Center" Background="AoEnglish"/>
                        </HorizontalStack>
diff --git a/Tests/Interfaces/Nouveau dossier/test4.1.crow b/Tests/Interfaces/Nouveau dossier/test4.1.crow
deleted file mode 100755 (executable)
index 2ac55cd..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0"?>
-<Group Name="MainGrp"
-       Width="800" Height="500"
-       Background="0.5,0.5,0.5,0.5" Foreground="White"
-       Margin="10" >
-       <Border 
-               BorderWidth="2" Foreground="Transparent"
-               Focusable="True"
-               MouseEnter="{Foreground = White}"
-               MouseLeave="{Foreground = Transparent}">
-
-               <HorizontalStack Name="hs0" Fit="true"
-                       WidgetSpacing="10" 
-                       VerticalAlignment="Center" 
-                       Background="0.5,0.5,0.5,0.5">
-                       <VerticalStack Name="vs1"
-                               Margin="20" Width="400" Height="Fit">
-                               <Label Name="labMouse" Text="MousePos"/>
-                               <HorizontalStack Name="hsPbar" Fit="true">
-                                       <ProgressBar Name="pbBar" 
-                                               Width="100" Height="20"
-                                               Value="50"
-                                               Foreground="BlueCrayola" Background="DarkGray"
-                                               BorderWidth="2" Foreground="White"/>
-<!--                                   <Label Name="labPb"
-                                               Width="20"
-                                               TextAlignment="Right"/>
-                                       <ProgressBar Name="pbBar"
-                                               Width="100" Height="10"
-                                               Value="30"/>-->
-                               </HorizontalStack>
-                               <HorizontalStack  Name="hsFocus" Fit="true">
-                                       <Label Text="Focused:"/>
-                                       <Label Name="labFocus" />
-                               </HorizontalStack>
-                               <HorizontalStack Fit="true">
-                                       <Label Text="Active:"  Name="hsActive"/>
-                                       <Label Name="labActive"/>
-                               </HorizontalStack>
-                               <HorizontalStack Fit="true">
-                                       <Label Text="Hover:"  Name="hsHover"/>
-                                       <Label Name="labHover" />
-                               </HorizontalStack>
-                               <Button Margin="5" BorderWidth="0" Background="Gray" Width="Fit" Height="Fit">
-                                       <Label FontSize="10" Text="This is a test" Margin="5" FontColor="White" Foreground="White" />
-                               </Button>
-                               <TextBoxWidget  TextAlignment="Left" Font="droid,14"                                            
-                                                               Width="300" Height="Fit" Margin="2"
-                                                               Foreground="White" BorderWidth="1"
-                                                               Text="editable text"/>
-                               <GroupBox Title="Group Box" Width="300" Height="100" 
-                                       Foreground="White" BorderWidth="2" Margin="3">
-                                       <Label Name="labValue" FontSize="14" Text="000" TextAlignment="Center"/>
-                               </GroupBox>
-                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
-                               <GraduatedSlider Name="slider" Height="30" Width="300" Foreground="BlueBell"/>
-                       </VerticalStack>
-<!--                   <VerticalStack Width="Fit" Height="Fit" BorderWidth="1" Margin="5" WidgetSpacing="4">
-                               <Button Width="Fit" Height="Fit" Margin="15">
-                                       <Image Path="/mnt/data/Images/130px-Blason_ville_fr_Aubure_(Haut-Rhin).svg.png"/>
-                               </Button>
-                               <HorizontalStack>
-                                       <Label Text="Update" FontColor="White" VerticalAlignment="Center" />
-                                       <Label Name="labUpdate" Text="xxxx" FontSize="16" Width="60" TextAlignment="Center" Background="DarkGreen"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Fps:" Width = "30" VerticalAlignment="Center"  TextAlignment="Left"/>
-                                       <Label Name="labFps" Text="xxxx" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Min:" Width = "30" />
-                                       <Label Name="labFpsMin" Text="xxxx" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Max:" Width = "30"/>
-                                       <Label Name="labFpsMax" Text="xxxx" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                       </VerticalStack>
-
-                       <Scroller Background="DimGray" Height="350" Width="300"  
-                                Margin="5" VerticalScrolling="true">
-                               <VerticalStack Name="colors" VerticalAlignment="Top" Margin="5">
-                                       <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
-                                                               BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
-                               </VerticalStack>
-                       </Scroller>-->
-
-               </HorizontalStack>
-
-               <Slider 
-                       Height="20" Width="300" 
-                       Background="Transparent"
-                       VerticalAlignment="Bottom" />
-               </Border>
-</Group>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/test4.crow b/Tests/Interfaces/Nouveau dossier/test4.crow
deleted file mode 100755 (executable)
index 06476f3..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version="1.0"?>
-<Group Name="MainGrp"
-       Width="800" Height="500"
-       Background="0.5,0.5,0.5,0.5" Foreground="White"
-       Margin="10" >
-       <Border Margin="10" CornerRadius="10"
-               Name="mainBorder"
-               BorderWidth="2" Foreground="Transparent"
-               Focusable="True"
-               MouseEnter="{Foreground = White}"
-               MouseLeave="{Foreground = Transparent}">
-               <HorizontalStack WidgetSpacing="1">
-                       <VerticalStack Width="Fit">
-                               <HorizontalStack WidgetSpacing="1" Fit="true">
-                                       <VerticalStack Fit="true">
-                                               <Label Text="{MousePosition}"/>
-                                               <HorizontalStack  Name="hsFocus" Fit="true">
-                                                       <Label Text="Focused:"/>
-                                                       <Label Name="labFocus"/>
-                                               </HorizontalStack>
-                                               <HorizontalStack Fit="true">
-                                                       <Label Text="Active:"  Name="hsActive"/>
-                                                       <Label Name="labActive"/>
-                                               </HorizontalStack>
-                                               <HorizontalStack Fit="true">
-                                                       <Label Text="Hover:"  Name="hsHover"/>
-                                                       <Label Name="labHover"/>
-                                               </HorizontalStack>
-                                       </VerticalStack>
-                                       <VerticalStack Fit="true">                                      
-                                               <CheckBox Name="chk1"/>
-                                               <CheckBox Name="chk2" IsChecked="true"/>
-
-                                       </VerticalStack>
-                                       <VerticalStack Fit="true">
-                                               <RadioButton IsChecked="true"/>
-                                               <RadioButton/>
-                                               <Button MouseClick="onButClick"/>
-                                       </VerticalStack>
-                               </HorizontalStack>
-                               <TextBox Name="textbox1" TextAlignment="Left" Font="droid,14"                                           
-                                                               Width="200" Height="Fit" Margin="2" Background="White"
-                                                               Forground="Black"
-                                                               Foreground="DimGray" BorderWidth="1"
-                                                               Text="editable text"/>
-                               <Popper Width="100">
-                                       <Border Fit="True" Background="ArmyGreen">
-                                               <Image Margin="10" Fit="true" Path="#Crow.Images.Icons.tetra.png"/>
-                                       </Border>
-                               </Popper>
-
-                       </VerticalStack>
-                       <VerticalStack Fit="true"  Margin="0" WidgetSpacing="1">
-                               <Button  Margin="1" Width="150" Height="100">
-                                       <Image Path="#Tests.image.tetra.png"/>
-                               </Button>
-                               <Popper Width="100">
-                                       <Border Fit="True" Background="ArmyGreen">
-                                               <Image Margin="10" Fit="true" Path="#Crow.Images.Icons.tetra.png"/>
-                                       </Border>
-                               </Popper>
-                               <Expandable Name="expander" Width="150" Height="Fit">
-                                       <VerticalStack Name="vsExpanded" Width="100">
-                                               <CheckBox Name="chk1"/>
-                                               <CheckBox Name="chk2" IsChecked="true"/>
-                                               <CheckBox Name="chk3"/>
-                                               <CheckBox Name="chk4"/>
-                                       </VerticalStack>                
-                               </Expandable>
-                               <Expandable Name="expander2" Width="150" Height="Fit">
-                                       <VerticalStack Name="vsExpanded" Width="100">
-                                               <CheckBox Name="chk1"/>
-                                               <CheckBox Name="chk2" IsChecked="true"/>
-                                       </VerticalStack>                
-                               </Expandable>
-                               <Expandable Name="expander3" Width="150" Height="Fit">
-                                       <VerticalStack Name="vsExpanded" Width="100">
-                                               <CheckBox Name="chk1" IsChecked="true"/>
-                                               <CheckBox Name="chk2"/>
-                                       </VerticalStack>                
-                               </Expandable>
-                               <HorizontalStack>
-                                       <Label Text="Update" FontColor="White"/>
-                                       <Label Name="labUpdate" Text="{update}" FontSize="16" Width="60" TextAlignment="Center" Background="DarkGreen"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Fps:" Width = "30"/>
-                                       <Label Name="labFps" Text="{fps}" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Min:" Width = "30"/>
-                                       <Label Name="labFpsMin" Text="{fpsMin}" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                               <HorizontalStack>
-                                       <Label Text="Max:" Width = "30"/>
-                                       <Label Name="labFpsMax" Text="{fpsMax}" Font="droid bold, 14"
-                                               TextAlignment="Center" Background="AoEnglish"/>
-                               </HorizontalStack>
-                       </VerticalStack>
-                       <HorizontalStack Width="Fit">
-                               <Scroller Name="scroller1" Background="DimGray" Width="Fit"  
-                                        Margin="5" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
-                                       <VerticalStack Name="colors" VerticalAlignment="Top" Margin="1" Fit="true">
-<!--                                           <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
-                                                                       BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
-                                               <ProgressBar Width="100" Height="20" Value="{fps}" BorderWidth="2"
-                                                       Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>                                                                                             -->
-                                       </VerticalStack>
-                               </Scroller>
-                               <ScrollBar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
-                                       Orientation="Vertical" Width="10" Height="Stretched"/>
-                       </HorizontalStack>
-               </HorizontalStack>
-<!--           <HorizontalStack Name="hs0"
-                       WidgetSpacing="1" 
-                       VerticalAlignment="Top">
-                       <Slider Orientation="Vertical" Height="300" Width="10" Background="Transparent" />
-                       <VerticalStack Name="vs1" Spacing="5">
-                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
-                               <HorizontalStack WidgetSpacing="10">
-                                       
-
-                                       <Spinner Width="50" Value="5"></Spinner>
-                               </HorizontalStack>
-                               <HorizontalStack Name="hsPbar" Margin="5">
-                                       <ProgressBar Name="pbBar" 
-                                               Width="200" Height="20"
-                                               Minimum="0"
-                                               Maximum="200"
-                                               Value="{fps}"
-                                               Foreground="BlueCrayola" Background="DarkGray"
-                                               BorderWidth="2" Foreground="White"/>
-                               </HorizontalStack>
-
-                               <Button  Margin="5" BorderWidth="Stretched" Width="Fit" Height="Fit"  HorizontalAlignment="Center">
-                                       <Label FontSize="18" Text="This is a test" Margin="5" Foreground="Black" />
-                               </Button>
-
-                               <GroupBox Title="Group Box" Width="300" Height="100" 
-                                       Foreground="White" BorderWidth="2" Margin="3">
-                                       <Label Name="labValue" FontSize="14" Text="{../../slider.Value}" TextAlignment="Center"/>
-                               </GroupBox>
-                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
-                               <GraduatedSlider Name="slider" Height="30" Width="300" Foreground="BlueBell"/>
-                       </VerticalStack>
-       
-                       <HorizontalStack Height="350" Width="Fit">
-                               <Scroller Name="scroller1" Background="DimGray" Height="Stretched" Width="Fit"  
-                                        Margin="5" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
-                                       <VerticalStack Name="colors" VerticalAlignment="Top" Margin="1">
-                                               <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
-                                                                       BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
-                                               <ProgressBar Width="100" Height="20" Value="{fps}" BorderWidth="2"
-                                                       Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>                                                                                             
-                                       </VerticalStack>
-                               </Scroller>
-                               <Scrollbar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
-                                       Orientation="Vertical" Width="16" />
-                       </HorizontalStack>
-               </HorizontalStack>
--->
-<!--           <Slider 
-                       Height="20" Width="100" 
-                       Background="Transparent"
-                       VerticalAlignment="Bottom" />-->
-               </Border>
-</Group>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/test6.crow b/Tests/Interfaces/Nouveau dossier/test6.crow
deleted file mode 100755 (executable)
index 532450d..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0"?>
-<Border BorderWidth="1" Foreground="White" CornerRadius="10" Width="500" Height="300">
-       <VerticalStack Height="Stretched" Background="0.4,0.4,0.4,0.4">
-               <Border BorderWidth="1" Foreground="White"  Height="20" Background="0.1,0.5;1,0,0.5">
-                       <HorizontalStack Name="hs" Margin="1" Spacing="1" Height="Fit" >
-                               <GraphicObject Width="5"/>
-                               <Image Name="Image" Margin="1" Width="12" Height="12" Path="#go.Images.Icons.tetra.png"/>
-                               <Label Foreground="White" Width="Stretched" Name="Title" Margin="1" TextAlignment="Center" />
-                               <Border CornerRadius="6" BorderWidth="1" Margin="0" Foreground="Transparent"  Height="12" Width="12"
-                                       MouseEnter="{Foreground=White}" MouseLeave="{Foreground=Transparent}">
-                                       <Image Focusable="true" Name="Image" Margin="0" Width="Stretched" Height="Stretched" 
-                                       Path="#go.Images.Icons.exit2.svg"/>
-                               </Border>
-                               <GraphicObject Width="5"/>
-                       </HorizontalStack>
-               </Border>
-<!--           <Container Name="Content"/>-->
-               <HorizontalStack Spacing="10">
-                       <GraphicObject Width="30"/>
-                       <Image Name="Image" Width="40" Height="40" Background="Red"
-                               Path="#go.Images.Icons.iconInfo.svg" />
-                       <Label Font="serif, 12" Width="Stretched" Height="Stretched" Text="MessageBox"
-                               Multiline="true" WordWrap="true"/>
-                       <GraphicObject Width="30"/>
-               </HorizontalStack>
-               <HorizontalStack Height="Fit" Margin="5">
-                       <GraphicObject/>
-                       <Button Text="Ok"/>
-                       <Button Text="Cancel"/>
-               </HorizontalStack>
-       </VerticalStack>
-</Border>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testColorList.crow b/Tests/Interfaces/Nouveau dossier/testColorList.crow
deleted file mode 100755 (executable)
index d9b6741..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0"?>
-<Border BorderWidth="2" Fit="true">
-       <VerticalStack Fit="true" Margin="5">
-               <ListBox Data="{TestList}" Background="0.5,0.5,0.5,0.7"
-                                        HorizontalAlignment="Center" Width="200" Height="200" Margin="5"
-                                        ItemTemplate="#Tests.Interfaces.colorItem.crow">
-                       <Template>
-                               <Border BorderWidth="1" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
-                                       <HorizontalStack Margin="1" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}" >
-                                               <Scroller Name="scroller1" Height="{../../../HeightPolicy}" Width="{../../../WidthPolicy}" 
-                                                               Margin="2" VerticalScrolling="true" ScrollY="{../scrollbar1.Value}"
-                                                               ValueChanged="../../../_scroller_ValueChanged">
-                                                       <VerticalStack Width="{../../../../WidthPolicy}" Height="Fit" MinimumSize="10,10"
-                                                               Name="List" Margin="0"
-                                                               VerticalAlignment="Top"
-                                                               HorizontalAlignment="Left"
-                                                               LayoutChanged="../../../../_list_LayoutChanged"/>
-                                               </Scroller>
-                                               <ScrollBar Name="scrollbar1" Value="{../scroller1.ScrollY}" 
-                                                       Maximum="{../scroller1.MaximumScroll}" Orientation="Vertical" 
-                                                       Width="14" Height="{../../../HeightPolicy}" />
-                                       </HorizontalStack>
-                               </Border>
-                       </Template>
-               </ListBox>
-               <HorizontalStack Fit="true" HorizontalAlignment="Right">
-                       <Button Caption="Load list" MouseClick="OnLoadList"/>
-                       <Button Caption="Clear" MouseClick="OnClear"/>
-               </HorizontalStack>
-       </VerticalStack>
-</Border>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testDirViewer.crow b/Tests/Interfaces/Nouveau dossier/testDirViewer.crow
deleted file mode 100755 (executable)
index dd6f9b8..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0"?>
-
-       <VerticalStack Height="Fit" Width="Fit" Name="hstack" Margin="0" Spacing="Stretched">
-               <Border Height="Fit" Width="200" BorderWidth="2" CornerRadius="10">
-                       <Label Name="labName" Text="{Name}" Width="Stretched" Height="Fit"/>
-               </Border>
-               <ListBox Data="{GetFileSystemInfos}" Width="Fit" Height="400"
-                       Background="0.5,0.5,0.5,0.5"
-                       SelectedItemChanged="OnSelectedItemChanged" 
-                       ItemTemplate="Interfaces/tmpDirItem.goml" >
-                       <Template>
-                               <Border BorderWidth="1" MinimumSize="20,20" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
-                                       <HorizontalStack Margin="1" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}">
-                                               <Scroller  Name="scroller1" Height="{../../../HeightPolicy}" Width="{../../../WidthPolicy}" 
-                                                Margin="2" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
-                                                       <VerticalStack Width="{../../../../WidthPolicy}" Height="Fit" Name="List" Margin="0" VerticalAlignment="Top"/>
-                                               </Scroller>
-                                               <Scrollbar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
-                                                       Orientation="Vertical" Width="10" Height="{../../../HeightPolicy}" />
-                                       </HorizontalStack>
-                               </Border>
-                       </Template>
-               </ListBox>
-       </VerticalStack>
diff --git a/Tests/Interfaces/Nouveau dossier/testFileDialog.goml b/Tests/Interfaces/Nouveau dossier/testFileDialog.goml
deleted file mode 100644 (file)
index 715ff2f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0"?>
-<FileDialog Width="500" Height="300"/>
-
diff --git a/Tests/Interfaces/Nouveau dossier/testImage.crow b/Tests/Interfaces/Nouveau dossier/testImage.crow
deleted file mode 100755 (executable)
index 46ffdcb..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0"?>
-<VerticalStack Fit="true">
-       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="SCALED PROPORTIONNAL" Width="150"/>
-               <Image Width="50%" Height="Fit" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg"/>
-<!--           <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
-               <Image Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image Margin="2" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
-               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />-->
-       </HorizontalStack>
-<!--   <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="SCALED NOT PROPORTIONNAL" Width="150"/>
-               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Margin="2" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
-               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
-       </HorizontalStack>
-       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="UNSCALED" Width="150"/>
-               <Image Scaled="false" Background="Blue" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Margin="10" Background="Blue" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Background="Blue" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Background="Blue" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Background="Blue" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Background="Blue" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
-               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
-       </HorizontalStack>
-       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="SCALED PROPORTIONNAL" Width="150"/>
-               <Image Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-       </HorizontalStack>
-       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="SCALED NOT PROPORTIONNAL" Width="150"/>
-               <Image KeepProportions="false" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image KeepProportions="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-       </HorizontalStack>
-       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Label Text="UNSCALED" Width="150"/>
-               <Image Scaled="false" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
-       </HorizontalStack>
-       <HorizontalStack Width="Fit" Height="100" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
-               <Image Background="Blue" Path="#Tests.image.crow0.svg" />
-               <Image Margin="10" Background="White" Path="#Tests.image.crow0.svg" />
-               <Image Background="White" Width="20" Height="10" Path="#Tests.image.crow0.svg" />
-               <Image Margin="1" Background="White" Width="20" Height="10" Path="#Tests.image.crow0.svg" />
-       </HorizontalStack>-->
-</VerticalStack>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testLabel.crow b/Tests/Interfaces/Nouveau dossier/testLabel.crow
deleted file mode 100755 (executable)
index 51cf97b..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0"?>
-<VerticalStack>
-       <TextRun Multiline="true" WordWrap="true" Width="Stretched" Height="100" Background="DimGray"
-               Text="This is a long text to test text wrapping, and so here is another statement to add to this meaningless text only designed to make a small test" />
-       <Label Name="labFps" Text="{fps}" Font="droid bold, 12" TextAlignment="Center" Background="AoEnglish" />
-</VerticalStack>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testMsgBox.crow b/Tests/Interfaces/Nouveau dossier/testMsgBox.crow
deleted file mode 100755 (executable)
index 680f43b..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0"?>
-<MessageBox Title="message" Message="this is a message box"
-       Ok="onMsgBoxOk"
-       Cancel="onMsgBoxCancel"/>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testOutOfClipUpdate.crow b/Tests/Interfaces/Nouveau dossier/testOutOfClipUpdate.crow
deleted file mode 100755 (executable)
index b5e29f4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0"?>
-<Container Width="200" Height="100" Background="DimGray" Margin="5">
-       <Container Width="Stretched" Height="300" Background="DarkBlue">
-               <Label Text="{fps}" Background="BlueCrayola" VerticalAlignment="Center"/>
-       </Container>
-</Container>
diff --git a/Tests/Interfaces/Nouveau dossier/testRadioButton2.crow b/Tests/Interfaces/Nouveau dossier/testRadioButton2.crow
deleted file mode 100755 (executable)
index 02231d2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0"?>
-<VerticalStack Width="200" Height="Fit" Margin="20" Background="DimGray">
-       <RadioButton Caption="Radio1"/>
-       <RadioButton Caption="Radio2" IsChecked="true"/>
-       <RadioButton Caption="Radio3"/>
-       <RadioButton Caption="Radio4">
-               <Template>
-                       <HorizontalStack Spacing="1" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
-                               <Image Margin="2" Width="14" Height="14" Path="{../../Image}" SvgSub="{../../SvgSub}"/>
-                               <Label Text="{../../Caption}" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}"/>
-                       </HorizontalStack>
-               </Template>
-       </RadioButton>
-</VerticalStack>
-
diff --git a/Tests/Interfaces/Nouveau dossier/testTabView.crow b/Tests/Interfaces/Nouveau dossier/testTabView.crow
deleted file mode 100644 (file)
index 27c221f..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<HorizontalStack Fit="true">
-       <VerticalStack Fit="true">
-               <TabView Name="tabview1"
-                       Width="400" Height="200" Orientation="Horizontal" Spacing="20">
-                       <TabItem Name="TabItem1" Caption="tab item 1" Margin="0">
-                               <VerticalStack Fit="true">
-                                       <CheckBox/>
-                                       <CheckBox/>
-                                       <CheckBox/>
-                                       <CheckBox/>
-                               </VerticalStack>
-                       </TabItem>
-                       <TabItem Name="TabItem2" Caption="tab item 2" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
-                               <VerticalStack Fit="true">
-                                       <RadioButton/>
-                                       <RadioButton/>
-                                       <RadioButton/>
-                                       <RadioButton/>
-                               </VerticalStack>
-                       </TabItem>
-                       <TabItem Name="TabItem2" Caption="tab item 3" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
-                               <Container Margin="5" CornerRadius="2" Width="Stretched" Height="Stretched">
-                                       <TextBox Margin="5" Width="Stretched" Height="Stretched" Multiline="true" TextAlignment="TopLeft"/>
-                               </Container>
-                       </TabItem>
-                       <TabItem Name="TabItem2" Caption="tab item 4" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
-                               <TextBox/>
-                       </TabItem>
-               </TabView>
-               <Button Background="vgradient|0:DimGray|1:Black" HorizontalAlignment="Right"
-                       Caption="Add new tab" Width="Fit" Height="30" MouseClick="onAddTabButClick"/>
-       </VerticalStack>
-</HorizontalStack>
-
diff --git a/Tests/Interfaces/Nouveau dossier/testTreeView.crow b/Tests/Interfaces/Nouveau dossier/testTreeView.crow
deleted file mode 100755 (executable)
index 86bcae8..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0"?>
-<TreeView Height="400" Width="200" Data="{List2}" ItemTemplate="#Crow.Templates.TreeViewItem.crow"/>
\ No newline at end of file
diff --git a/Tests/Interfaces/Nouveau dossier/testTypeViewer.goml b/Tests/Interfaces/Nouveau dossier/testTypeViewer.goml
deleted file mode 100755 (executable)
index caa454f..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0"?>
-
-       <VerticalStack Height="Fit" Width="250" Name="hstack" Margin="0" Spacing="0">
-               <Border Height="Fit" Width="Stretched" BorderWidth="2" CornerRadius="10" Background="SteelBlue">
-                       <Label Name="labName" Text="{Name}" Width="Stretched" Height="Fit" Margin="3"/>
-               </Border>
-               <ListBox Data="{Members}" Width="Stretched" Height="400" ItemTemplate="Interfaces/tmpMembers.goml" Focusable="true">
-                       
-               </ListBox>
-       </VerticalStack>
diff --git a/Tests/Interfaces/Unsorted/test4.1.crow b/Tests/Interfaces/Unsorted/test4.1.crow
new file mode 100755 (executable)
index 0000000..2ac55cd
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0"?>
+<Group Name="MainGrp"
+       Width="800" Height="500"
+       Background="0.5,0.5,0.5,0.5" Foreground="White"
+       Margin="10" >
+       <Border 
+               BorderWidth="2" Foreground="Transparent"
+               Focusable="True"
+               MouseEnter="{Foreground = White}"
+               MouseLeave="{Foreground = Transparent}">
+
+               <HorizontalStack Name="hs0" Fit="true"
+                       WidgetSpacing="10" 
+                       VerticalAlignment="Center" 
+                       Background="0.5,0.5,0.5,0.5">
+                       <VerticalStack Name="vs1"
+                               Margin="20" Width="400" Height="Fit">
+                               <Label Name="labMouse" Text="MousePos"/>
+                               <HorizontalStack Name="hsPbar" Fit="true">
+                                       <ProgressBar Name="pbBar" 
+                                               Width="100" Height="20"
+                                               Value="50"
+                                               Foreground="BlueCrayola" Background="DarkGray"
+                                               BorderWidth="2" Foreground="White"/>
+<!--                                   <Label Name="labPb"
+                                               Width="20"
+                                               TextAlignment="Right"/>
+                                       <ProgressBar Name="pbBar"
+                                               Width="100" Height="10"
+                                               Value="30"/>-->
+                               </HorizontalStack>
+                               <HorizontalStack  Name="hsFocus" Fit="true">
+                                       <Label Text="Focused:"/>
+                                       <Label Name="labFocus" />
+                               </HorizontalStack>
+                               <HorizontalStack Fit="true">
+                                       <Label Text="Active:"  Name="hsActive"/>
+                                       <Label Name="labActive"/>
+                               </HorizontalStack>
+                               <HorizontalStack Fit="true">
+                                       <Label Text="Hover:"  Name="hsHover"/>
+                                       <Label Name="labHover" />
+                               </HorizontalStack>
+                               <Button Margin="5" BorderWidth="0" Background="Gray" Width="Fit" Height="Fit">
+                                       <Label FontSize="10" Text="This is a test" Margin="5" FontColor="White" Foreground="White" />
+                               </Button>
+                               <TextBoxWidget  TextAlignment="Left" Font="droid,14"                                            
+                                                               Width="300" Height="Fit" Margin="2"
+                                                               Foreground="White" BorderWidth="1"
+                                                               Text="editable text"/>
+                               <GroupBox Title="Group Box" Width="300" Height="100" 
+                                       Foreground="White" BorderWidth="2" Margin="3">
+                                       <Label Name="labValue" FontSize="14" Text="000" TextAlignment="Center"/>
+                               </GroupBox>
+                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
+                               <GraduatedSlider Name="slider" Height="30" Width="300" Foreground="BlueBell"/>
+                       </VerticalStack>
+<!--                   <VerticalStack Width="Fit" Height="Fit" BorderWidth="1" Margin="5" WidgetSpacing="4">
+                               <Button Width="Fit" Height="Fit" Margin="15">
+                                       <Image Path="/mnt/data/Images/130px-Blason_ville_fr_Aubure_(Haut-Rhin).svg.png"/>
+                               </Button>
+                               <HorizontalStack>
+                                       <Label Text="Update" FontColor="White" VerticalAlignment="Center" />
+                                       <Label Name="labUpdate" Text="xxxx" FontSize="16" Width="60" TextAlignment="Center" Background="DarkGreen"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Fps:" Width = "30" VerticalAlignment="Center"  TextAlignment="Left"/>
+                                       <Label Name="labFps" Text="xxxx" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Min:" Width = "30" />
+                                       <Label Name="labFpsMin" Text="xxxx" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Max:" Width = "30"/>
+                                       <Label Name="labFpsMax" Text="xxxx" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                       </VerticalStack>
+
+                       <Scroller Background="DimGray" Height="350" Width="300"  
+                                Margin="5" VerticalScrolling="true">
+                               <VerticalStack Name="colors" VerticalAlignment="Top" Margin="5">
+                                       <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
+                                                               BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
+                               </VerticalStack>
+                       </Scroller>-->
+
+               </HorizontalStack>
+
+               <Slider 
+                       Height="20" Width="300" 
+                       Background="Transparent"
+                       VerticalAlignment="Bottom" />
+               </Border>
+</Group>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/test4.crow b/Tests/Interfaces/Unsorted/test4.crow
new file mode 100755 (executable)
index 0000000..06476f3
--- /dev/null
@@ -0,0 +1,169 @@
+<?xml version="1.0"?>
+<Group Name="MainGrp"
+       Width="800" Height="500"
+       Background="0.5,0.5,0.5,0.5" Foreground="White"
+       Margin="10" >
+       <Border Margin="10" CornerRadius="10"
+               Name="mainBorder"
+               BorderWidth="2" Foreground="Transparent"
+               Focusable="True"
+               MouseEnter="{Foreground = White}"
+               MouseLeave="{Foreground = Transparent}">
+               <HorizontalStack WidgetSpacing="1">
+                       <VerticalStack Width="Fit">
+                               <HorizontalStack WidgetSpacing="1" Fit="true">
+                                       <VerticalStack Fit="true">
+                                               <Label Text="{MousePosition}"/>
+                                               <HorizontalStack  Name="hsFocus" Fit="true">
+                                                       <Label Text="Focused:"/>
+                                                       <Label Name="labFocus"/>
+                                               </HorizontalStack>
+                                               <HorizontalStack Fit="true">
+                                                       <Label Text="Active:"  Name="hsActive"/>
+                                                       <Label Name="labActive"/>
+                                               </HorizontalStack>
+                                               <HorizontalStack Fit="true">
+                                                       <Label Text="Hover:"  Name="hsHover"/>
+                                                       <Label Name="labHover"/>
+                                               </HorizontalStack>
+                                       </VerticalStack>
+                                       <VerticalStack Fit="true">                                      
+                                               <CheckBox Name="chk1"/>
+                                               <CheckBox Name="chk2" IsChecked="true"/>
+
+                                       </VerticalStack>
+                                       <VerticalStack Fit="true">
+                                               <RadioButton IsChecked="true"/>
+                                               <RadioButton/>
+                                               <Button MouseClick="onButClick"/>
+                                       </VerticalStack>
+                               </HorizontalStack>
+                               <TextBox Name="textbox1" TextAlignment="Left" Font="droid,14"                                           
+                                                               Width="200" Height="Fit" Margin="2" Background="White"
+                                                               Forground="Black"
+                                                               Foreground="DimGray" BorderWidth="1"
+                                                               Text="editable text"/>
+                               <Popper Width="100">
+                                       <Border Fit="True" Background="ArmyGreen">
+                                               <Image Margin="10" Fit="true" Path="#Crow.Images.Icons.tetra.png"/>
+                                       </Border>
+                               </Popper>
+
+                       </VerticalStack>
+                       <VerticalStack Fit="true"  Margin="0" WidgetSpacing="1">
+                               <Button  Margin="1" Width="150" Height="100">
+                                       <Image Path="#Tests.image.tetra.png"/>
+                               </Button>
+                               <Popper Width="100">
+                                       <Border Fit="True" Background="ArmyGreen">
+                                               <Image Margin="10" Fit="true" Path="#Crow.Images.Icons.tetra.png"/>
+                                       </Border>
+                               </Popper>
+                               <Expandable Name="expander" Width="150" Height="Fit">
+                                       <VerticalStack Name="vsExpanded" Width="100">
+                                               <CheckBox Name="chk1"/>
+                                               <CheckBox Name="chk2" IsChecked="true"/>
+                                               <CheckBox Name="chk3"/>
+                                               <CheckBox Name="chk4"/>
+                                       </VerticalStack>                
+                               </Expandable>
+                               <Expandable Name="expander2" Width="150" Height="Fit">
+                                       <VerticalStack Name="vsExpanded" Width="100">
+                                               <CheckBox Name="chk1"/>
+                                               <CheckBox Name="chk2" IsChecked="true"/>
+                                       </VerticalStack>                
+                               </Expandable>
+                               <Expandable Name="expander3" Width="150" Height="Fit">
+                                       <VerticalStack Name="vsExpanded" Width="100">
+                                               <CheckBox Name="chk1" IsChecked="true"/>
+                                               <CheckBox Name="chk2"/>
+                                       </VerticalStack>                
+                               </Expandable>
+                               <HorizontalStack>
+                                       <Label Text="Update" FontColor="White"/>
+                                       <Label Name="labUpdate" Text="{update}" FontSize="16" Width="60" TextAlignment="Center" Background="DarkGreen"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Fps:" Width = "30"/>
+                                       <Label Name="labFps" Text="{fps}" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Min:" Width = "30"/>
+                                       <Label Name="labFpsMin" Text="{fpsMin}" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                               <HorizontalStack>
+                                       <Label Text="Max:" Width = "30"/>
+                                       <Label Name="labFpsMax" Text="{fpsMax}" Font="droid bold, 14"
+                                               TextAlignment="Center" Background="AoEnglish"/>
+                               </HorizontalStack>
+                       </VerticalStack>
+                       <HorizontalStack Width="Fit">
+                               <Scroller Name="scroller1" Background="DimGray" Width="Fit"  
+                                        Margin="5" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
+                                       <VerticalStack Name="colors" VerticalAlignment="Top" Margin="1" Fit="true">
+<!--                                           <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
+                                                                       BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
+                                               <ProgressBar Width="100" Height="20" Value="{fps}" BorderWidth="2"
+                                                       Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>                                                                                             -->
+                                       </VerticalStack>
+                               </Scroller>
+                               <ScrollBar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
+                                       Orientation="Vertical" Width="10" Height="Stretched"/>
+                       </HorizontalStack>
+               </HorizontalStack>
+<!--           <HorizontalStack Name="hs0"
+                       WidgetSpacing="1" 
+                       VerticalAlignment="Top">
+                       <Slider Orientation="Vertical" Height="300" Width="10" Background="Transparent" />
+                       <VerticalStack Name="vs1" Spacing="5">
+                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
+                               <HorizontalStack WidgetSpacing="10">
+                                       
+
+                                       <Spinner Width="50" Value="5"></Spinner>
+                               </HorizontalStack>
+                               <HorizontalStack Name="hsPbar" Margin="5">
+                                       <ProgressBar Name="pbBar" 
+                                               Width="200" Height="20"
+                                               Minimum="0"
+                                               Maximum="200"
+                                               Value="{fps}"
+                                               Foreground="BlueCrayola" Background="DarkGray"
+                                               BorderWidth="2" Foreground="White"/>
+                               </HorizontalStack>
+
+                               <Button  Margin="5" BorderWidth="Stretched" Width="Fit" Height="Fit"  HorizontalAlignment="Center">
+                                       <Label FontSize="18" Text="This is a test" Margin="5" Foreground="Black" />
+                               </Button>
+
+                               <GroupBox Title="Group Box" Width="300" Height="100" 
+                                       Foreground="White" BorderWidth="2" Margin="3">
+                                       <Label Name="labValue" FontSize="14" Text="{../../slider.Value}" TextAlignment="Center"/>
+                               </GroupBox>
+                               <Slider Height="10" Width="300" BorderWidth="1" Background="Transparent" />
+                               <GraduatedSlider Name="slider" Height="30" Width="300" Foreground="BlueBell"/>
+                       </VerticalStack>
+       
+                       <HorizontalStack Height="350" Width="Fit">
+                               <Scroller Name="scroller1" Background="DimGray" Height="Stretched" Width="Fit"  
+                                        Margin="5" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
+                                       <VerticalStack Name="colors" VerticalAlignment="Top" Margin="1">
+                                               <ProgressBar Name="pbBar2" Width="100" Height="20" Value="50"
+                                                                       BorderWidth="2" Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>
+                                               <ProgressBar Width="100" Height="20" Value="{fps}" BorderWidth="2"
+                                                       Foreground="White" Foreground="BlueCrayola" Background="DarkGray"/>                                                                                             
+                                       </VerticalStack>
+                               </Scroller>
+                               <Scrollbar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
+                                       Orientation="Vertical" Width="16" />
+                       </HorizontalStack>
+               </HorizontalStack>
+-->
+<!--           <Slider 
+                       Height="20" Width="100" 
+                       Background="Transparent"
+                       VerticalAlignment="Bottom" />-->
+               </Border>
+</Group>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/test6.crow b/Tests/Interfaces/Unsorted/test6.crow
new file mode 100755 (executable)
index 0000000..532450d
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<Border BorderWidth="1" Foreground="White" CornerRadius="10" Width="500" Height="300">
+       <VerticalStack Height="Stretched" Background="0.4,0.4,0.4,0.4">
+               <Border BorderWidth="1" Foreground="White"  Height="20" Background="0.1,0.5;1,0,0.5">
+                       <HorizontalStack Name="hs" Margin="1" Spacing="1" Height="Fit" >
+                               <GraphicObject Width="5"/>
+                               <Image Name="Image" Margin="1" Width="12" Height="12" Path="#go.Images.Icons.tetra.png"/>
+                               <Label Foreground="White" Width="Stretched" Name="Title" Margin="1" TextAlignment="Center" />
+                               <Border CornerRadius="6" BorderWidth="1" Margin="0" Foreground="Transparent"  Height="12" Width="12"
+                                       MouseEnter="{Foreground=White}" MouseLeave="{Foreground=Transparent}">
+                                       <Image Focusable="true" Name="Image" Margin="0" Width="Stretched" Height="Stretched" 
+                                       Path="#go.Images.Icons.exit2.svg"/>
+                               </Border>
+                               <GraphicObject Width="5"/>
+                       </HorizontalStack>
+               </Border>
+<!--           <Container Name="Content"/>-->
+               <HorizontalStack Spacing="10">
+                       <GraphicObject Width="30"/>
+                       <Image Name="Image" Width="40" Height="40" Background="Red"
+                               Path="#go.Images.Icons.iconInfo.svg" />
+                       <Label Font="serif, 12" Width="Stretched" Height="Stretched" Text="MessageBox"
+                               Multiline="true" WordWrap="true"/>
+                       <GraphicObject Width="30"/>
+               </HorizontalStack>
+               <HorizontalStack Height="Fit" Margin="5">
+                       <GraphicObject/>
+                       <Button Text="Ok"/>
+                       <Button Text="Cancel"/>
+               </HorizontalStack>
+       </VerticalStack>
+</Border>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testColorList.crow b/Tests/Interfaces/Unsorted/testColorList.crow
new file mode 100755 (executable)
index 0000000..d9b6741
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<Border BorderWidth="2" Fit="true">
+       <VerticalStack Fit="true" Margin="5">
+               <ListBox Data="{TestList}" Background="0.5,0.5,0.5,0.7"
+                                        HorizontalAlignment="Center" Width="200" Height="200" Margin="5"
+                                        ItemTemplate="#Tests.Interfaces.colorItem.crow">
+                       <Template>
+                               <Border BorderWidth="1" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
+                                       <HorizontalStack Margin="1" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}" >
+                                               <Scroller Name="scroller1" Height="{../../../HeightPolicy}" Width="{../../../WidthPolicy}" 
+                                                               Margin="2" VerticalScrolling="true" ScrollY="{../scrollbar1.Value}"
+                                                               ValueChanged="../../../_scroller_ValueChanged">
+                                                       <VerticalStack Width="{../../../../WidthPolicy}" Height="Fit" MinimumSize="10,10"
+                                                               Name="List" Margin="0"
+                                                               VerticalAlignment="Top"
+                                                               HorizontalAlignment="Left"
+                                                               LayoutChanged="../../../../_list_LayoutChanged"/>
+                                               </Scroller>
+                                               <ScrollBar Name="scrollbar1" Value="{../scroller1.ScrollY}" 
+                                                       Maximum="{../scroller1.MaximumScroll}" Orientation="Vertical" 
+                                                       Width="14" Height="{../../../HeightPolicy}" />
+                                       </HorizontalStack>
+                               </Border>
+                       </Template>
+               </ListBox>
+               <HorizontalStack Fit="true" HorizontalAlignment="Right">
+                       <Button Caption="Load list" MouseClick="OnLoadList"/>
+                       <Button Caption="Clear" MouseClick="OnClear"/>
+               </HorizontalStack>
+       </VerticalStack>
+</Border>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testDirViewer.crow b/Tests/Interfaces/Unsorted/testDirViewer.crow
new file mode 100755 (executable)
index 0000000..dd6f9b8
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+
+       <VerticalStack Height="Fit" Width="Fit" Name="hstack" Margin="0" Spacing="Stretched">
+               <Border Height="Fit" Width="200" BorderWidth="2" CornerRadius="10">
+                       <Label Name="labName" Text="{Name}" Width="Stretched" Height="Fit"/>
+               </Border>
+               <ListBox Data="{GetFileSystemInfos}" Width="Fit" Height="400"
+                       Background="0.5,0.5,0.5,0.5"
+                       SelectedItemChanged="OnSelectedItemChanged" 
+                       ItemTemplate="Interfaces/tmpDirItem.goml" >
+                       <Template>
+                               <Border BorderWidth="1" MinimumSize="20,20" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
+                                       <HorizontalStack Margin="1" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}">
+                                               <Scroller  Name="scroller1" Height="{../../../HeightPolicy}" Width="{../../../WidthPolicy}" 
+                                                Margin="2" VerticalScrolling="true" ScrollY="{../scrollbar1.Scroll}">
+                                                       <VerticalStack Width="{../../../../WidthPolicy}" Height="Fit" Name="List" Margin="0" VerticalAlignment="Top"/>
+                                               </Scroller>
+                                               <Scrollbar Name="scrollbar1" Scroll="{../scroller1.ScrollY}" MaximumScroll="{../scroller1.MaximumScroll}"
+                                                       Orientation="Vertical" Width="10" Height="{../../../HeightPolicy}" />
+                                       </HorizontalStack>
+                               </Border>
+                       </Template>
+               </ListBox>
+       </VerticalStack>
diff --git a/Tests/Interfaces/Unsorted/testFileDialog.goml b/Tests/Interfaces/Unsorted/testFileDialog.goml
new file mode 100644 (file)
index 0000000..715ff2f
--- /dev/null
@@ -0,0 +1,3 @@
+<?xml version="1.0"?>
+<FileDialog Width="500" Height="300"/>
+
diff --git a/Tests/Interfaces/Unsorted/testImage.crow b/Tests/Interfaces/Unsorted/testImage.crow
new file mode 100755 (executable)
index 0000000..46ffdcb
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0"?>
+<VerticalStack Fit="true">
+       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="SCALED PROPORTIONNAL" Width="150"/>
+               <Image Width="50%" Height="Fit" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg"/>
+<!--           <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
+               <Image Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image Margin="2" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
+               <Image Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />-->
+       </HorizontalStack>
+<!--   <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="SCALED NOT PROPORTIONNAL" Width="150"/>
+               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Margin="2" Background="vgradient|0:SkyBlue|1:White" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
+               <Image KeepProportions="false" Margin="10" Background="vgradient|0:SkyBlue|1:White" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
+       </HorizontalStack>
+       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="UNSCALED" Width="150"/>
+               <Image Scaled="false" Background="Blue" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Margin="10" Background="Blue" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Background="Blue" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Background="Blue" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Background="Blue" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Background="Blue" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
+               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Tests.image.crow0.svg" />
+       </HorizontalStack>
+       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="SCALED PROPORTIONNAL" Width="150"/>
+               <Image Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+       </HorizontalStack>
+       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="SCALED NOT PROPORTIONNAL" Width="150"/>
+               <Image KeepProportions="false" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image KeepProportions="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+       </HorizontalStack>
+       <HorizontalStack Fit="true" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Label Text="UNSCALED" Width="150"/>
+               <Image Scaled="false" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Margin="10" Background="Blue" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Margin="2" Background="Blue" Width="20" Height="20" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="100" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Margin="10" Background="Blue" Width="100" Height="50" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+               <Image Scaled="false" Margin="10" Background="Blue" Width="50" Height="Fit" Path="#Crow.Images.Icons.tetra.png"/>
+       </HorizontalStack>
+       <HorizontalStack Width="Fit" Height="100" Background="hgradient|0:DarkRed|1:Transparent" Margin="5">
+               <Image Background="Blue" Path="#Tests.image.crow0.svg" />
+               <Image Margin="10" Background="White" Path="#Tests.image.crow0.svg" />
+               <Image Background="White" Width="20" Height="10" Path="#Tests.image.crow0.svg" />
+               <Image Margin="1" Background="White" Width="20" Height="10" Path="#Tests.image.crow0.svg" />
+       </HorizontalStack>-->
+</VerticalStack>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testLabel.crow b/Tests/Interfaces/Unsorted/testLabel.crow
new file mode 100755 (executable)
index 0000000..51cf97b
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<VerticalStack>
+       <TextRun Multiline="true" WordWrap="true" Width="Stretched" Height="100" Background="DimGray"
+               Text="This is a long text to test text wrapping, and so here is another statement to add to this meaningless text only designed to make a small test" />
+       <Label Name="labFps" Text="{fps}" Font="droid bold, 12" TextAlignment="Center" Background="AoEnglish" />
+</VerticalStack>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testMsgBox.crow b/Tests/Interfaces/Unsorted/testMsgBox.crow
new file mode 100755 (executable)
index 0000000..680f43b
--- /dev/null
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<MessageBox Title="message" Message="this is a message box"
+       Ok="onMsgBoxOk"
+       Cancel="onMsgBoxCancel"/>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testOutOfClipUpdate.crow b/Tests/Interfaces/Unsorted/testOutOfClipUpdate.crow
new file mode 100755 (executable)
index 0000000..b5e29f4
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<Container Width="200" Height="100" Background="DimGray" Margin="5">
+       <Container Width="Stretched" Height="300" Background="DarkBlue">
+               <Label Text="{fps}" Background="BlueCrayola" VerticalAlignment="Center"/>
+       </Container>
+</Container>
diff --git a/Tests/Interfaces/Unsorted/testRadioButton2.crow b/Tests/Interfaces/Unsorted/testRadioButton2.crow
new file mode 100755 (executable)
index 0000000..02231d2
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<VerticalStack Width="200" Height="Fit" Margin="20" Background="DimGray">
+       <RadioButton Caption="Radio1"/>
+       <RadioButton Caption="Radio2" IsChecked="true"/>
+       <RadioButton Caption="Radio3"/>
+       <RadioButton Caption="Radio4">
+               <Template>
+                       <HorizontalStack Spacing="1" Height="{../HeightPolicy}" Width="{../WidthPolicy}">
+                               <Image Margin="2" Width="14" Height="14" Path="{../../Image}" SvgSub="{../../SvgSub}"/>
+                               <Label Text="{../../Caption}" Height="{../../HeightPolicy}" Width="{../../WidthPolicy}"/>
+                       </HorizontalStack>
+               </Template>
+       </RadioButton>
+</VerticalStack>
+
diff --git a/Tests/Interfaces/Unsorted/testTabView.crow b/Tests/Interfaces/Unsorted/testTabView.crow
new file mode 100644 (file)
index 0000000..27c221f
--- /dev/null
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<HorizontalStack Fit="true">
+       <VerticalStack Fit="true">
+               <TabView Name="tabview1"
+                       Width="400" Height="200" Orientation="Horizontal" Spacing="20">
+                       <TabItem Name="TabItem1" Caption="tab item 1" Margin="0">
+                               <VerticalStack Fit="true">
+                                       <CheckBox/>
+                                       <CheckBox/>
+                                       <CheckBox/>
+                                       <CheckBox/>
+                               </VerticalStack>
+                       </TabItem>
+                       <TabItem Name="TabItem2" Caption="tab item 2" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
+                               <VerticalStack Fit="true">
+                                       <RadioButton/>
+                                       <RadioButton/>
+                                       <RadioButton/>
+                                       <RadioButton/>
+                               </VerticalStack>
+                       </TabItem>
+                       <TabItem Name="TabItem2" Caption="tab item 3" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
+                               <Container Margin="5" CornerRadius="2" Width="Stretched" Height="Stretched">
+                                       <TextBox Margin="5" Width="Stretched" Height="Stretched" Multiline="true" TextAlignment="TopLeft"/>
+                               </Container>
+                       </TabItem>
+                       <TabItem Name="TabItem2" Caption="tab item 4" Width="Stretched" Height="Stretched" Margin="0" Background="Gray">
+                               <TextBox/>
+                       </TabItem>
+               </TabView>
+               <Button Background="vgradient|0:DimGray|1:Black" HorizontalAlignment="Right"
+                       Caption="Add new tab" Width="Fit" Height="30" MouseClick="onAddTabButClick"/>
+       </VerticalStack>
+</HorizontalStack>
+
diff --git a/Tests/Interfaces/Unsorted/testTreeView.crow b/Tests/Interfaces/Unsorted/testTreeView.crow
new file mode 100755 (executable)
index 0000000..86bcae8
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0"?>
+<TreeView Height="400" Width="200" Data="{List2}" ItemTemplate="#Crow.Templates.TreeViewItem.crow"/>
\ No newline at end of file
diff --git a/Tests/Interfaces/Unsorted/testTypeViewer.goml b/Tests/Interfaces/Unsorted/testTypeViewer.goml
new file mode 100755 (executable)
index 0000000..caa454f
--- /dev/null
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+
+       <VerticalStack Height="Fit" Width="250" Name="hstack" Margin="0" Spacing="0">
+               <Border Height="Fit" Width="Stretched" BorderWidth="2" CornerRadius="10" Background="SteelBlue">
+                       <Label Name="labName" Text="{Name}" Width="Stretched" Height="Fit" Margin="3"/>
+               </Border>
+               <ListBox Data="{Members}" Width="Stretched" Height="400" ItemTemplate="Interfaces/tmpMembers.goml" Focusable="true">
+                       
+               </ListBox>
+       </VerticalStack>
index 3554e9c9267df71ac7a5cc2ced32d21dd212b1ed..61868849fae3adaf43dc2b2e10dbdbea2fd46526 100644 (file)
@@ -8,17 +8,18 @@
     <OutputType>Exe</OutputType>
     <RootNamespace>Tests</RootNamespace>
     <AssemblyName>Tests</AssemblyName>
-    <StartupObject>Tests.HelloCube</StartupObject>
+    <StartupObject>Tests.BasicTests</StartupObject>
     <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ReleaseVersion>0.4</ReleaseVersion>
     <OutputPath>$(SolutionDir)build/$(Configuration)</OutputPath>
     <IntermediateOutputPath>$(SolutionDir)build/obj/$(Configuration)</IntermediateOutputPath>
-       <CustomCommands>
+    <CustomCommands>
       <CustomCommands>
         <Command type="Execute" command="${TargetName}" workingdir="${SolutionDir}/build/${ProjectConfigName}" />
       </CustomCommands>
-    </CustomCommands>  
+    </CustomCommands>
+    <SynchReleaseVersion>false</SynchReleaseVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
@@ -51,6 +52,7 @@
     </Reference>
     <Reference Include="glib-sharp">
       <HintPath>$(SolutionDir)packages\GtkSharp.3.1.3\lib\net45\glib-sharp.dll</HintPath>
+      <Package>glib-sharp-3.0</Package>
     </Reference>
     <Reference Include="OpenTK">
       <HintPath>$(SolutionDir)packages\OpenTK.Next.1.2.2336.6514-pre\lib\net20\OpenTK.dll</HintPath>
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
   <Import Project="$(SolutionDir)packages\GtkSharp.3.1.3\build\net45\GtkSharp.targets" Condition="Exists('$(SolutionDir)packages\GtkSharp.3.1.3\build\net45\GtkSharp.targets')" />
   <ItemGroup>
-    <Compile Include="Interfaces\testBorder.goml.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="BasicTests.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="OpenGL\Shader.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="OpenGL\vaoMesh.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="OpenTKGameWindow.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="OpenGL\Texture.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="HelloWorld.cs">
-      <LogicalName></LogicalName>
-    </Compile>
-    <Compile Include="HelloCube.cs">
-      <LogicalName></LogicalName>
-    </Compile>
+    <Compile Include="Interfaces\testBorder.goml.cs" />
+    <Compile Include="BasicTests.cs" />
+    <Compile Include="OpenGL\Shader.cs" />
+    <Compile Include="OpenGL\vaoMesh.cs" />
+    <Compile Include="OpenTKGameWindow.cs" />
+    <Compile Include="OpenGL\Texture.cs" />
+    <Compile Include="HelloWorld.cs" />
+    <Compile Include="HelloCube.cs" />
   </ItemGroup>
   <ItemGroup>
     <None Include="image\u.svg">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\log.xml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\testMeter.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\tmpMembers.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\itemTmp.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\tmpDirItem.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\5.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\6.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\basicTests\7.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\GraphicObject\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\GraphicObject\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\GraphicObject\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Container\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Container\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Container\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\3.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Container\3.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Group\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Group\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Group\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Group\3.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Group\4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\0h.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\1h.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\2h.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\3h.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Stack\4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\5.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\6.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\clip0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\clip1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\clip2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\clip3.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\clip4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\fps.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test_Listbox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test_stack.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test1.1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test1.2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test2WayBinding.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test3.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test5.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\test7.crow">
       <LogicalName>Tests.Interfaces.test7.goml</LogicalName>
     </None>
     <None Include="Interfaces\Divers\testAll.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testBorder.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testButton.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testCheckbox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testCombobox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testContainer.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testGrid.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testGroupBox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testHStack.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testPopper.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testRadioButton.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testScrollbar.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testSpinner.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testStacks.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testTextBox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testWindow.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testWindow2.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
     <None Include="Interfaces\Divers\testWindow3.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testColorList.crow">
+    <None Include="Interfaces\Expandable\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\test4.crow">
+    <None Include="Interfaces\Expandable\0.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\test6.crow">
+    <None Include="Interfaces\Expandable\7.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\test4.1.crow">
+    <None Include="Interfaces\Expandable\2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testMsgBox.crow">
+    <None Include="Interfaces\Splitter\1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testOutOfClipUpdate.crow">
+    <None Include="OpenTK.dll.config" />
+    <None Include="image\textest.png">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testFileDialog.goml">
+    <None Include="Interfaces\Divers\welcome.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testImage.crow">
+    <None Include="packages.config" />
+    <None Include="Interfaces\Unsorted\testColorList.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testDirViewer.crow">
+    <None Include="Interfaces\Unsorted\test4.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testTabView.crow">
+    <None Include="Interfaces\Unsorted\test6.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testTypeViewer.goml">
+    <None Include="Interfaces\Unsorted\test4.1.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testLabel.crow">
+    <None Include="Interfaces\Unsorted\testMsgBox.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testRadioButton2.crow">
+    <None Include="Interfaces\Unsorted\testOutOfClipUpdate.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Expandable\1.crow">
+    <None Include="Interfaces\Unsorted\testFileDialog.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Expandable\0.crow">
+    <None Include="Interfaces\Unsorted\testImage.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Expandable\7.crow">
+    <None Include="Interfaces\Unsorted\testDirViewer.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Expandable\2.crow">
+    <None Include="Interfaces\Unsorted\testTabView.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Nouveau dossier\testTreeView.crow">
+    <None Include="Interfaces\Unsorted\testTypeViewer.goml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Splitter\1.crow">
+    <None Include="Interfaces\Unsorted\testLabel.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="OpenTK.dll.config">
-      <LogicalName></LogicalName>
-    </None>
-    <None Include="image\textest.png">
+    <None Include="Interfaces\Unsorted\testRadioButton2.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
     </None>
-    <None Include="Interfaces\Divers\welcome.crow">
+    <None Include="Interfaces\Unsorted\testTreeView.crow">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-      <LogicalName></LogicalName>
-    </None>
-    <None Include="packages.config">
-      <LogicalName></LogicalName>
     </None>
   </ItemGroup>
   <ItemGroup>
     <Folder Include="Interfaces\GraphicObject\" />
     <Folder Include="Interfaces\Group\" />
     <Folder Include="Interfaces\Divers\" />
-    <Folder Include="Interfaces\Nouveau dossier\" />
     <Folder Include="Interfaces\Expandable\" />
     <Folder Include="Interfaces\Splitter\" />
+    <Folder Include="Interfaces\Unsorted\" />
   </ItemGroup>
   <ItemGroup>
     <EmbeddedResource Include="image\tetra.png">
diff --git a/Tests/ui/test.style b/Tests/ui/test.style
new file mode 100644 (file)
index 0000000..fe85d91
--- /dev/null
@@ -0,0 +1,3 @@
+BlueLabel {
+       Background = Blue;
+}
index 3ec29fb5aedc7f94bd08528d3574ceb739161b94..c0cd774785ddb6030a57a03a6c11eca6c3f9ada2 100644 (file)
@@ -1,6 +1,7 @@
 using System.ComponentModel;
 using System.Diagnostics;
 using System.Xml.Serialization;
+using System;
 
 namespace Crow
 {
@@ -126,15 +127,22 @@ namespace Crow
                                                contentSize.Width += go.Slot.Width - go.LastSlots.Width;
 
                                        if (stretchedGO != null) {
-                                               stretchedGO.Slot.Width = this.ClientRectangle.Width - contentSize.Width - Spacing * (Children.Count - 1);
-                                               stretchedGO.bmp = null;
+                                               int newW = Math.Max (
+                                                                  this.ClientRectangle.Width - contentSize.Width - Spacing * (Children.Count - 1),
+                                                                  stretchedGO.MinimumSize.Width);
+                                               if (stretchedGO.MaximumSize.Width > 0)
+                                                       newW = Math.Min (newW, stretchedGO.MaximumSize.Width);
+                                               if (newW != stretchedGO.Slot.Width) {                                                   
+                                                       stretchedGO.Slot.Width = newW;
+                                                       stretchedGO.bmp = null;
 #if DEBUG_LAYOUTING
                                        Debug.WriteLine ("\tAdjusting Width of " + stretchedGO.ToString());
 #endif
-                                               stretchedGO.LayoutChanged -= OnChildLayoutChanges;
-                                               stretchedGO.OnLayoutChanges (LayoutingType.Width);
-                                               stretchedGO.LayoutChanged += OnChildLayoutChanges;
-                                               stretchedGO.LastSlots.Width = stretchedGO.Slot.Width;
+                                                       stretchedGO.LayoutChanged -= OnChildLayoutChanges;
+                                                       stretchedGO.OnLayoutChanges (LayoutingType.Width);
+                                                       stretchedGO.LayoutChanged += OnChildLayoutChanges;
+                                                       stretchedGO.LastSlots.Width = stretchedGO.Slot.Width;
+                                               }
                                        }
                                        
                                        if (Width == Measure.Fit)
@@ -158,15 +166,22 @@ namespace Crow
                                                contentSize.Height += go.Slot.Height - go.LastSlots.Height;
                                        
                                        if (stretchedGO != null) {
-                                               stretchedGO.Slot.Height = this.ClientRectangle.Height - contentSize.Height - Spacing * (Children.Count -1);
-                                               stretchedGO.bmp = null;
+                                               int newH = Math.Max (
+                                                       this.ClientRectangle.Height - contentSize.Height - Spacing * (Children.Count - 1),
+                                                       stretchedGO.MinimumSize.Height);
+                                               if (stretchedGO.MaximumSize.Height > 0)
+                                                       newH = Math.Min (newH, stretchedGO.MaximumSize.Height);
+                                               if (newH != stretchedGO.Slot.Height) {
+                                                       stretchedGO.Slot.Height = newH;
+                                                       stretchedGO.bmp = null;
 #if DEBUG_LAYOUTING
                                        Debug.WriteLine ("\tAdjusting Width of " + stretchedGO.ToString());
 #endif
-                                               stretchedGO.LayoutChanged -= OnChildLayoutChanges;
-                                               stretchedGO.OnLayoutChanges (LayoutingType.Height);
-                                               stretchedGO.LayoutChanged += OnChildLayoutChanges;
-                                               stretchedGO.LastSlots.Height = stretchedGO.Slot.Height;
+                                                       stretchedGO.LayoutChanged -= OnChildLayoutChanges;
+                                                       stretchedGO.OnLayoutChanges (LayoutingType.Height);
+                                                       stretchedGO.LayoutChanged += OnChildLayoutChanges;
+                                                       stretchedGO.LastSlots.Height = stretchedGO.Slot.Height;
+                                               }
                                        }
 
                                        if (Height == Measure.Fit)
index 8c91824d5b5d3f51e2386d5b9eb263e6c4c9d92e..669fa83d6bf6ccb652078b0b33da5f8dddfff98c 100644 (file)
@@ -342,7 +342,7 @@ namespace Crow
                                        return;
                                _background = value;
                                NotifyValueChanged ("Background", _background);
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                        }
                }
                [XmlAttributeAttribute()][DefaultValue("White")]
@@ -353,7 +353,7 @@ namespace Crow
                                        return;
                                _foreground = value;
                                NotifyValueChanged ("Foreground", _foreground);
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                        }
                }
                [XmlAttributeAttribute()][DefaultValue("sans,10")]
@@ -375,7 +375,7 @@ namespace Crow
                                        return;
                                _cornerRadius = value;
                                NotifyValueChanged ("CornerRadius", _cornerRadius);
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                        }
                }
                [XmlAttributeAttribute()][DefaultValue(0)]
@@ -402,8 +402,8 @@ namespace Crow
                                        return;
 
                                //ensure main win doesn't keep hidden childrens ref
-                               if (!_isVisible && this.Contains (Interface.CurrentInterface.hoverWidget))
-                                       Interface.CurrentInterface.hoverWidget = null;
+                               if (!_isVisible && this.Contains (Interface.CurrentInterface.HoverWidget))
+                                       Interface.CurrentInterface.HoverWidget = null;
 
                                if (Parent is GraphicObject)
                                        (Parent as GraphicObject).RegisterForLayouting (LayoutingType.Sizing);
@@ -516,17 +516,17 @@ namespace Crow
                        //   those files being placed in a Styles folder
                        string styleKey = Style;
                        if (!string.IsNullOrEmpty (Style)) {
-                               if (Interface.CurrentInterface.Styling.ContainsKey (Style)) {
-                                       styling.Add (Interface.CurrentInterface.Styling [Style]);
+                               if (Interface.Styling.ContainsKey (Style)) {
+                                       styling.Add (Interface.Styling [Style]);
                                }
                        }
-                       if (Interface.CurrentInterface.Styling.ContainsKey (thisType.FullName)) {
-                               styling.Add (Interface.CurrentInterface.Styling [thisType.FullName]);
+                       if (Interface.Styling.ContainsKey (thisType.FullName)) {
+                               styling.Add (Interface.Styling [thisType.FullName]);
                                if (string.IsNullOrEmpty (styleKey))
                                        styleKey = thisType.FullName;
                        }
-                       if (Interface.CurrentInterface.Styling.ContainsKey (thisType.Name)) {
-                               styling.Add (Interface.CurrentInterface.Styling [thisType.Name]);
+                       if (Interface.Styling.ContainsKey (thisType.Name)) {
+                               styling.Add (Interface.Styling [thisType.Name]);
                                if (string.IsNullOrEmpty (styleKey))
                                        styleKey = thisType.Name;
                        }
@@ -701,15 +701,23 @@ namespace Crow
                        if (Parent != null)
                                Parent.RegisterClip (clip + Slot.Position + ClientRectangle.Position);
                }
-               public bool IsQueueForGraphicUpdate = false;
-               /// <summary>
-               /// Clear chached object and add clipping region in redraw list of interface
-               /// </summary>
+               public bool IsQueueForRedraw = false;
+               /// <summary> Full update, taking care of sizing policy </summary>
+               [MethodImpl(MethodImplOptions.AggressiveInlining)]
                public void RegisterForGraphicUpdate ()
                {
-                       Interface.RegisterForGraphicUpdate (this);
+                       bmp = null;
+                       if (Width == Measure.Fit || Height == Measure.Fit)
+                               RegisterForLayouting (LayoutingType.Sizing);
+                       Interface.CurrentInterface.EnqueueForRepaint (this);
+               }
+               /// <summary> query an update of the content, a redraw </summary>
+               [MethodImpl(MethodImplOptions.AggressiveInlining)]
+               public void RegisterForRedraw ()
+               {
+                       bmp = null;
+                       Interface.CurrentInterface.EnqueueForRepaint (this);
                }
-
                #region Layouting
                [XmlIgnore]public int LayoutingTries {
                        get { return layoutingTries; }
@@ -930,7 +938,7 @@ namespace Crow
 
                        //if no layouting remains in queue for item, registre for redraw
                        if (this.registeredLayoutings == LayoutingType.None && bmp == null)
-                               RegisterForGraphicUpdate ();
+                               Interface.CurrentInterface.EnqueueForRepaint (this);
 
                        return true;
                }
@@ -1044,8 +1052,8 @@ namespace Crow
                }
                public virtual void checkHoverWidget(MouseMoveEventArgs e)
                {
-                       if (Interface.CurrentInterface.hoverWidget != this) {
-                               Interface.CurrentInterface.hoverWidget = this;
+                       if (Interface.CurrentInterface.HoverWidget != this) {
+                               Interface.CurrentInterface.HoverWidget = this;
                                onMouseEnter (this, e);
                        }
 
index 2b440ac1b50b9a692c13a13cb73d827e17cd92fe..48f835acd902e3e75c95011f899f695f519cc75d 100644 (file)
@@ -290,8 +290,8 @@ namespace Crow
                #region Mouse handling
                public override void checkHoverWidget (MouseMoveEventArgs e)
                {
-                       if (Interface.CurrentInterface.hoverWidget != this) {
-                               Interface.CurrentInterface.hoverWidget = this;
+                       if (Interface.CurrentInterface.HoverWidget != this) {
+                               Interface.CurrentInterface.HoverWidget = this;
                                onMouseEnter (this, e);
                        }
                        for (int i = Children.Count - 1; i >= 0; i--) {
index 505bd69ecf2e2e6485bce1110c1dd2f58c49e4c1..6b90b149df04753fbdd7341d169daa742ecb23a4 100644 (file)
@@ -79,7 +79,7 @@ namespace Crow
                                        return;
                                selColor = value;
                                NotifyValueChanged ("SelectionBackground", selColor);
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                        }
                }
                [XmlAttributeAttribute][DefaultValue("White")]
@@ -90,7 +90,7 @@ namespace Crow
                                        return;
                                selFontColor = value;
                                NotifyValueChanged ("SelectionForeground", selFontColor);
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                        }
                }
                [XmlAttributeAttribute][DefaultValue(Alignment.Left)]
@@ -101,8 +101,7 @@ namespace Crow
                                if (value == _textAlignment)
                                        return;
                                _textAlignment = value; 
-                               RegisterForGraphicUpdate ();
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                                NotifyValueChanged ("TextAlignment", _textAlignment);
                        }
         }
@@ -113,7 +112,7 @@ namespace Crow
                                if (horizontalStretch == value)
                                        return;
                                horizontalStretch = value; 
-                               RegisterForGraphicUpdate ();
+                               RegisterForRedraw ();
                                NotifyValueChanged ("HorizontalStretch", horizontalStretch);
                        }
                }
@@ -124,8 +123,8 @@ namespace Crow
                                if (verticalStretch == value)
                                        return;
                                verticalStretch = value; 
+                               RegisterForRedraw ();
                                NotifyValueChanged ("VerticalStretch", verticalStretch);
-
                        }
                } 
                [XmlAttributeAttribute][DefaultValue("label")]
@@ -147,9 +146,8 @@ namespace Crow
 
                                lines = getLines;
 
-                               this.RegisterForGraphicUpdate ();
-                               this.RegisterForLayouting (LayoutingType.Sizing);
                                NotifyValueChanged ("Text", _text);
+                               this.RegisterForGraphicUpdate ();
             }
         }
                [XmlAttributeAttribute][DefaultValue(false)]
index 34834b8d432040aea6582396bd3d4dbc15ffa85f..79efac3305c4005fa29caa2914ac8415a8f3988d 100644 (file)
@@ -141,7 +141,7 @@ namespace Crow
                                        using (Stream stream = Interface.GetStreamFromPath (ItemTemplate))
                                                stream.CopyTo (templateStream);
                                }
-                               templateBaseType = Interface.GetTopContainerOfGOMLStream (templateStream);
+                               templateBaseType = Interface.GetTopContainerOfXMLStream (templateStream);
                        }
 
                        lock (Interface.CurrentInterface.UpdateMutex) {
index 5afcdaad1853c18523c67cec7628a70d5f8ca088..d5a07e58fcc9454c9d3113729a9b3ee220135afd 100644 (file)
@@ -183,8 +183,8 @@ namespace Crow
                #region Mouse handling
                public override void checkHoverWidget (MouseMoveEventArgs e)
                {
-                       if (Interface.CurrentInterface.hoverWidget != this) {
-                               Interface.CurrentInterface.hoverWidget = this;
+                       if (Interface.CurrentInterface.HoverWidget != this) {
+                               Interface.CurrentInterface.HoverWidget = this;
                                onMouseEnter (this, e);
                        }
 
index dee5e146790228f9939d3d8181946a8062406e64..07797a1048b2be56b139feb57f929c8ad6c24478 100644 (file)
@@ -44,7 +44,8 @@ namespace Crow
        {
                #region CTOR
                static Interface(){
-                       Interface.LoadCursors ();
+                       LoadCursors ();
+                       LoadStyling ();
 
                        FontRenderingOptions = new FontOptions ();
                        FontRenderingOptions.Antialias = Antialias.Subpixel;
@@ -54,12 +55,10 @@ namespace Crow
                }
                public Interface(){
                        Interface.CurrentInterface = this;
-                       LoadStyling ();
                }
                #endregion
 
                #region Static and constants
-               internal bool XmlLoading = false;
                /// <summary> keep ressource path for debug msg </summary>
                internal static string CurrentGOMLPath = "";
                //used in templatedControl
@@ -87,32 +86,53 @@ namespace Crow
                public static FontOptions FontRenderingOptions;
                #endregion
 
+               internal bool XmlLoading = false;
+
                public Queue<LayoutingQueueItem> LayoutingQueue = new Queue<LayoutingQueueItem> ();
-               public Queue<GraphicObject> GraphicUpdateQueue = new Queue<GraphicObject>();
-               public Dictionary<string, Dictionary<string, object>> Styling;
-               public string Clipboard;
-               public static void RegisterForGraphicUpdate(GraphicObject g)
+               public Queue<GraphicObject> DrawingQueue = new Queue<GraphicObject>();
+               public string Clipboard;//TODO:use object instead for complex copy paste
+               public void EnqueueForRepaint(GraphicObject g)
                {
-                       lock (CurrentInterface.GraphicUpdateQueue) {
-                               if (g.IsQueueForGraphicUpdate)
-                                       return;
-                               if (CurrentInterface == null)
+                       lock (DrawingQueue) {
+                               if (g.IsQueueForRedraw)
                                        return;
-                               CurrentInterface.GraphicUpdateQueue.Enqueue (g);
-                               g.IsQueueForGraphicUpdate = true;
+                               DrawingQueue.Enqueue (g);
+                               g.IsQueueForRedraw = true;
                        }
                }
 
-               #region default values loading helpers
+               #region default values and style loading
                /// Default values of properties from GraphicObjects are retrieve from XML Attributes.
                /// The reflexion process used to retrieve those values being very slow, it is compiled in MSIL
                /// and injected as a dynamic method referenced in the DefaultValuesLoader Dictionnary.
                /// The compilation is done on the first object instancing, and is also done for custom widgets
                public delegate void loadDefaultInvoker(object instance);
                public static Dictionary<String, loadDefaultInvoker> DefaultValuesLoader = new Dictionary<string, loadDefaultInvoker>();
-               #endregion
+               public static Dictionary<string, Dictionary<string, object>> Styling;
+               /// <summary> parse all styling data's and build global Styling Dictionary </summary>
+               static void LoadStyling() {
+                       System.Globalization.CultureInfo savedCulture = Thread.CurrentThread.CurrentCulture;
+                       Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
+
+                       Styling = new Dictionary<string, Dictionary<string, object>> ();
 
-               public static void LoadCursors(){
+                       //fetch styling info in this order, if member styling is alreadey referenced in previous
+                       //assembly, it's ignored.
+                       loadStylingFromAssembly (Assembly.GetEntryAssembly ());
+                       loadStylingFromAssembly (Assembly.GetExecutingAssembly ());
+
+                       Thread.CurrentThread.CurrentCulture = savedCulture;
+               }
+               /// <summary> Search for .style resources in assembly </summary>
+               static void loadStylingFromAssembly (Assembly assembly) {
+                       foreach (string s in assembly
+                               .GetManifestResourceNames ()
+                               .Where (r => r.EndsWith (".style", StringComparison.OrdinalIgnoreCase))) {
+                               new StyleReader (assembly, s)
+                                       .Dispose ();
+                       }
+               }
+               static void LoadCursors(){
                        //Load cursors
                        XCursor.Cross = XCursorFile.Load("#Crow.Images.Icons.Cursors.cross").Cursors[0];
                        XCursor.Default = XCursorFile.Load("#Crow.Images.Icons.Cursors.arrow").Cursors[0];
@@ -123,6 +143,8 @@ namespace Crow
                        XCursor.H = XCursorFile.Load("#Crow.Images.Icons.Cursors.sb_h_double_arrow").Cursors[0];
                        XCursor.V = XCursorFile.Load("#Crow.Images.Icons.Cursors.sb_v_double_arrow").Cursors[0];
                }
+               #endregion
+
 
                #region Load/Save
                public static Stream GetStreamFromPath (string path)
@@ -151,7 +173,7 @@ namespace Crow
                /// Pre-read first node to set GraphicObject class for loading
                /// and reset stream position to 0
                /// </summary>
-               public static Type GetTopContainerOfGOMLStream (Stream stream)
+               public static Type GetTopContainerOfXMLStream (Stream stream)
                {
                        string root = "Object";
                        stream.Seek (0, SeekOrigin.Begin);
@@ -198,7 +220,7 @@ namespace Crow
                        CurrentGOMLPath = path;
                        GraphicObject tmp = null;
                        using (Stream stream = GetStreamFromPath (path)) {
-                               tmp = Load(stream, GetTopContainerOfGOMLStream(stream), hostClass);
+                               tmp = Load(stream, GetTopContainerOfXMLStream(stream), hostClass);
                        }
                        Interface.XmlLoaderCount --;
 
@@ -249,30 +271,6 @@ namespace Crow
                                return tmp;
                        }
                }
-
-               public void LoadStyling() {
-                       System.Globalization.CultureInfo savedCulture = Thread.CurrentThread.CurrentCulture;
-                       Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
-
-                       Styling = new Dictionary<string, Dictionary<string, object>> ();
-
-                       //fetch styling info in this order, if member styling is alreadey referenced in previous
-                       //assembly, it's ignored.
-                       loadStylingFromAssembly (Assembly.GetEntryAssembly ());
-                       loadStylingFromAssembly (Assembly.GetExecutingAssembly ());
-
-                       Thread.CurrentThread.CurrentCulture = savedCulture;
-               }
-
-               void loadStylingFromAssembly (Assembly assembly) {
-                       foreach (string s in assembly
-                                       .GetManifestResourceNames ()
-                                        .Where (r => r.EndsWith (".style", StringComparison.OrdinalIgnoreCase))) {
-
-                               StyleReader sr = new StyleReader (assembly, s);
-                               sr.Dispose ();
-                       }
-               }
                #endregion
 
                #if MEASURE_TIME
@@ -283,12 +281,10 @@ namespace Crow
                #endif
 
                public List<GraphicObject> GraphicTree = new List<GraphicObject>();
-               public Color Background = Color.Transparent;
 
-               internal static Interface currentWindow;
                public static Interface CurrentInterface;
 
-               Rectangles _redrawClip = new Rectangles();//should find another way to access it from child
+               Rectangles _redrawClip = new Rectangles();
 
                Context ctx;
                Surface surf;
@@ -330,7 +326,7 @@ namespace Crow
                                        #endif
                        }
                }
-               public GraphicObject hoverWidget
+               public GraphicObject HoverWidget
                {
                        get { return _hoverWidget; }
                        set {
@@ -380,24 +376,6 @@ namespace Crow
                        processDrawing ();
 
                        Monitor.Exit (UpdateMutex);
-
-                       //                      if (ToolTip.isVisible) {
-                       //                              ToolTip.panel.processkLayouting();
-                       //                              if (ToolTip.panel.layoutIsValid)
-                       //                                      ToolTip.panel.Paint(ref ctx);
-                       //                      }
-                       //                      Debug.WriteLine("INTERFACE: layouting: {0} ticks \t graphical update {1} ticks \t drawing {2} ticks",
-                       //                          layoutTime.ElapsedTicks,
-                       //                          guTime.ElapsedTicks,
-                       //                          drawingTime.ElapsedTicks);
-                       //                      Debug.WriteLine("INTERFACE: layouting: {0} ms \t graphical update {1} ms \t drawing {2} ms",
-                       //                          layoutTime.ElapsedMilliseconds,
-                       //                          guTime.ElapsedMilliseconds,
-                       //                          drawingTime.ElapsedMilliseconds);
-
-                       //                      Debug.WriteLine("UPDATE: {0} ticks \t, {1} ms",
-                       //                              updateTime.ElapsedTicks,
-                               //                              updateTime.ElapsedMilliseconds);
                }
                void processLayouting(){
                        #if MEASURE_TIME
@@ -419,16 +397,16 @@ namespace Crow
                        #if MEASURE_TIME
                        clippingTime.Restart ();
                        #endif
-                       lock (CurrentInterface.GraphicUpdateQueue) {
-                               while (CurrentInterface.GraphicUpdateQueue.Count > 0) {
-                                       GraphicObject g = CurrentInterface.GraphicUpdateQueue.Dequeue ();
-                                       g.bmp = null;
-                                       g.IsQueueForGraphicUpdate = false;
+                       lock (CurrentInterface.DrawingQueue) {
+                               while (CurrentInterface.DrawingQueue.Count > 0) {
+                                       GraphicObject g = CurrentInterface.DrawingQueue.Dequeue ();
+                                       g.IsQueueForRedraw = false;
                                        try {
                                                if (g.Parent == null)
                                                        continue;
                                                g.Parent.RegisterClip (g.LastPaintedSlot);
-                                               g.Parent.RegisterClip (g.getSlot ());
+                                               if (g.getSlot () != g.LastPaintedSlot)
+                                                       g.Parent.RegisterClip (g.getSlot ());
                                        } catch (Exception ex) {
                                                Debug.WriteLine ("Error Register Clip: " + ex.ToString ());
                                        }
@@ -519,7 +497,7 @@ namespace Crow
                        {
                                GraphicTree.Remove(g);
                                GraphicTree.Insert(0, g);
-                               //g.registerClipRect ();
+                               EnqueueForRepaint (g);
                        }
                }
                /// <summary> Remove all Graphic objects from top container </summary>
@@ -596,10 +574,10 @@ namespace Crow
                                return true;
                        }
 
-                       if (hoverWidget != null) {
+                       if (HoverWidget != null) {
                                //TODO, ensure object is still in the graphic tree
                                //check topmost graphicobject first
-                               GraphicObject tmp = hoverWidget;
+                               GraphicObject tmp = HoverWidget;
                                GraphicObject topc = null;
                                while (tmp is GraphicObject) {
                                        topc = tmp;
@@ -610,7 +588,7 @@ namespace Crow
                                        int i = 0;
                                        while (i < idxhw) {
                                                if (GraphicTree [i].MouseIsIn (e.Position)) {
-                                                       hoverWidget.onMouseLeave (this, e);
+                                                       HoverWidget.onMouseLeave (this, e);
                                                        GraphicTree [i].checkHoverWidget (e);
                                                        return true;
                                                }
@@ -619,19 +597,19 @@ namespace Crow
                                }
 
 
-                               if (hoverWidget.MouseIsIn (e.Position)) {
-                                       hoverWidget.checkHoverWidget (e);
+                               if (HoverWidget.MouseIsIn (e.Position)) {
+                                       HoverWidget.checkHoverWidget (e);
                                        return true;
                                } else {
-                                       hoverWidget.onMouseLeave (this, e);
+                                       HoverWidget.onMouseLeave (this, e);
                                        //seek upward from last focused graph obj's
-                                       while (hoverWidget.Parent as GraphicObject != null) {
-                                               hoverWidget = hoverWidget.Parent as GraphicObject;
-                                               if (hoverWidget.MouseIsIn (e.Position)) {
-                                                       hoverWidget.checkHoverWidget (e);
+                                       while (HoverWidget.Parent as GraphicObject != null) {
+                                               HoverWidget = HoverWidget.Parent as GraphicObject;
+                                               if (HoverWidget.MouseIsIn (e.Position)) {
+                                                       HoverWidget.checkHoverWidget (e);
                                                        return true;
                                                } else
-                                                       hoverWidget.onMouseLeave (this, e);
+                                                       HoverWidget.onMouseLeave (this, e);
                                        }
                                }
                        }
@@ -645,7 +623,7 @@ namespace Crow
                                        return true;
                                }
                        }
-                       hoverWidget = null;
+                       HoverWidget = null;
                        return false;
                }
                public bool ProcessMouseButtonUp(int button)
@@ -671,10 +649,10 @@ namespace Crow
                        Mouse.EnableBit (button);
                        MouseButtonEventArgs e = new MouseButtonEventArgs () { Mouse = Mouse };
 
-                       if (hoverWidget == null)
+                       if (HoverWidget == null)
                                return false;
 
-                       hoverWidget.onMouseDown(hoverWidget,new BubblingMouseButtonEventArg(e));
+                       HoverWidget.onMouseDown(HoverWidget,new BubblingMouseButtonEventArg(e));
 
                        if (FocusedWidget == null)
                                return true;
@@ -690,9 +668,9 @@ namespace Crow
                        Mouse.SetScrollRelative (0, delta);
                        MouseWheelEventArgs e = new MouseWheelEventArgs () { Mouse = Mouse, DeltaPrecise = delta };
 
-                       if (hoverWidget == null)
+                       if (HoverWidget == null)
                                return false;
-                       hoverWidget.onMouseWheel (this, e);
+                       HoverWidget.onMouseWheel (this, e);
                        return true;
                }
 
index 11174e29e811ba640f42f1dcfebee94bb64a24f7..92b24e2de5442ad830e97f84ca04774252aad047 100644 (file)
@@ -34,7 +34,6 @@ namespace Crow
                public StyleReader (Assembly assembly, string resId)
                        : base(assembly.GetManifestResourceStream (resId))
                {
-                       Interface iface = Interface.CurrentInterface;
                        string styleKey = resId.Substring (0, resId.Length - 6);
                        string token = "";
                        List<string> targetsClasses = new List<string> ();
@@ -105,11 +104,11 @@ namespace Crow
                                                                string expression = token.Trim ();
 
                                                                foreach (string tc in targetsClasses) {
-                                                                       if (!iface.Styling.ContainsKey (tc))
-                                                                               iface.Styling [tc] = new Dictionary<string, object> ();
-                                                                       else if (iface.Styling [tc].ContainsKey (currentProperty))
+                                                                       if (!Interface.Styling.ContainsKey (tc))
+                                                                               Interface.Styling [tc] = new Dictionary<string, object> ();
+                                                                       else if (Interface.Styling [tc].ContainsKey (currentProperty))
                                                                                continue;
-                                                                       iface.Styling [tc] [currentProperty] = expression;
+                                                                       Interface.Styling [tc] [currentProperty] = expression;
                                                                }
                                                                token = "";
                                                        }