OSDN Git Service

32
authorHOSOKAWA Kenchi <hskwk@inter7.jp>
Sat, 20 Mar 2010 05:16:36 +0000 (14:16 +0900)
committerHOSOKAWA Kenchi <hskwk@inter7.jp>
Sat, 20 Mar 2010 05:16:36 +0000 (14:16 +0900)
dev3/PsychlopsSilverlight3.csproj
dev3/psychlops/core/app/app.cs [new file with mode: 0644]
dev3/psychlops/core/app/misc.cs
dev3/psychlops/core/graphic/canvas.cs
dev3/psychlops/extention/standard/widget.cs
test3/MainPage.xaml
test3/MainPage.xaml.cs
test3/PsychlopsMain.cs

index 001db3b..81480c4 100644 (file)
@@ -51,6 +51,7 @@
   </ItemGroup>\r
   <ItemGroup>\r
     <Compile Include="Properties\AssemblyInfo.cs" />\r
+    <Compile Include="psychlops\core\app\app.cs" />\r
     <Compile Include="psychlops\core\app\misc.cs" />\r
     <Compile Include="psychlops\core\device\clock.cs" />\r
     <Compile Include="psychlops\core\device\hid.cs" />\r
diff --git a/dev3/psychlops/core/app/app.cs b/dev3/psychlops/core/app/app.cs
new file mode 100644 (file)
index 0000000..827da65
--- /dev/null
@@ -0,0 +1,28 @@
+namespace Psychlops\r
+{\r
+\r
+       public static class AppState\r
+       {\r
+\r
+               public static string statusBar\r
+               {\r
+                       set { setStatusBar(value); }\r
+               }\r
+               internal static void setStatusBar(string str)\r
+               {\r
+                       Internal.Main.statusBar.Dispatcher.BeginInvoke(setStatusBar_, str);\r
+               }\r
+               internal static void setStatusBar__(string str)\r
+               {\r
+                       Internal.Main.statusBar.Text = str;\r
+               }\r
+               internal delegate void StringDelegate(string str);\r
+               internal static StringDelegate setStatusBar_;\r
+\r
+               static AppState()\r
+               {\r
+                       setStatusBar_ = new StringDelegate(setStatusBar__);\r
+               }\r
+       }\r
+\r
+}\r
index 25e7956..545e5cb 100644 (file)
@@ -14,6 +14,8 @@
                {\r
                        public static System.Threading.Thread routine;\r
                        public static System.Threading.AutoResetEvent canvas_flag;\r
+                       public static System.Windows.Controls.TextBlock statusBar;\r
+                       public static System.Windows.Controls.StackPanel widgetStack;\r
 \r
                        static Main()\r
                        {\r
index d9e0d37..297499e 100644 (file)
@@ -7,6 +7,7 @@ using System.Windows.Media;
 using System.Windows.Media.Animation;\r
 using System.Windows.Media.Imaging;\r
 using System.Windows.Shapes;\r
+using System.Windows.Browser;\r
 \r
 \r
 \r
@@ -140,6 +141,12 @@ namespace Psychlops
                        api_canvas.MouseWheel += Mouse.Canvas_MouseWheel;\r
                        panel.KeyDown += Keyboard.Canvas_KeyDown;\r
                        panel.KeyUp += Keyboard.Canvas_KeyUp;\r
+\r
+                       HtmlElement htmlHost = HtmlPage.Document.GetElementById("silverlightControlHost");\r
+                       //if (htmlHost != null) HtmlPage.Window.Alert("silverlightControlHost is null");\r
+                       htmlHost.SetStyleAttribute("width", (200+wid).ToString()+"px");\r
+                       htmlHost.SetStyleAttribute("height", (20+hei).ToString() + "px");\r
+                       htmlHost.SetStyleAttribute("margin", "2em auto auto auto");\r
                }\r
 \r
                #endregion\r
index 21229f4..d0a74c9 100644 (file)
@@ -13,5 +13,23 @@ using System.Windows.Shapes;
 namespace Psychlops\r
 {\r
 \r
+       namespace Widgets\r
+       {\r
+\r
+               class Slider\r
+               {\r
+               }\r
+\r
+\r
+\r
+\r
+               internal class Connector\r
+               {\r
+                       internal void stackSlider()\r
+                       {\r
+                       }\r
+               }\r
+\r
+       }\r
 \r
 }
\ No newline at end of file
index 1aef993..b7dd27b 100644 (file)
@@ -3,8 +3,16 @@
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"\r
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" \r
     mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">\r
-    <StackPanel x:Name="TotalRoot" HorizontalAlignment="Center" VerticalAlignment="Center">\r
-        <Canvas x:Name="LayoutRoot"></Canvas>\r
-        <!--<Image x:Name="main_buffer" Width="640" Height="480"/>-->\r
-    </StackPanel>\r
+       <StackPanel x:Name="TotalRoot">\r
+               <Grid>\r
+                       <Grid.ColumnDefinitions>\r
+                               <ColumnDefinition Width="200" />\r
+                               <ColumnDefinition Width="*" />\r
+                       </Grid.ColumnDefinitions>\r
+                       <StackPanel x:Name="Controller" Grid.Column="0">\r
+                       </StackPanel>\r
+                       <Canvas x:Name="LayoutRoot" Grid.Column="1"></Canvas>\r
+               </Grid>\r
+               <TextBlock x:Name="AppStatusBar">Status OK</TextBlock>\r
+       </StackPanel>\r
 </UserControl>\r
index 8bb50a0..e1f3496 100644 (file)
@@ -14,7 +14,7 @@ namespace PsychlopsSilverlight3test
                {\r
                        InitializeComponent();\r
                        // Show fps counter\r
-                       //Canvas.default_buffer_frame = main_buffer;\r
+\r
                        Canvas.default_api_canvas = LayoutRoot;\r
                        Canvas.default_panel = this;\r
                        this.IsTabStop = true;\r
@@ -29,14 +29,13 @@ namespace PsychlopsSilverlight3test
                        //main_routine.RunWorkerAsync();\r
 \r
                        main = new PsychlopsMain();\r
-                       //main.initialize();\r
                        Psychlops.Internal.Main.routine = new System.Threading.Thread(main.psychlops_main);\r
                        Psychlops.Internal.Main.routine.Start();\r
+                       //main.initialize();\r
                        //main_routine = main.psychlops_main();\r
-#if DEBUG\r
-                       DebugConsole = new System.Windows.Controls.TextBlock();\r
-                       TotalRoot.Children.Add(DebugConsole);\r
-#endif\r
+\r
+                       Psychlops.Internal.Main.statusBar = AppStatusBar;\r
+                       Psychlops.Internal.Main.widgetStack = Controller;\r
                }\r
                protected void getFocusMouseEnter(object sender, System.Windows.Input.MouseEventArgs e) {\r
                        this.Focus();\r
index 6f74ea3..1991b9d 100644 (file)
@@ -41,7 +41,7 @@ namespace PsychlopsSilverlight3test
 \r
                                //Figures.drawGabor(ref img, 20, 100, 1, 0, frames * 2.0 * Math.PI / tfreq / 60);\r
                                //Figures.drawGaussian(ref img, 20, 1);\r
-                               Figures.drawGrating(ref img, 200, 200, 20, 1, 2, frames * 2.0 * Math.PI / tfreq / 60);\r
+                               Figures.drawGrating(ref img, 100, 100, 20, 1, 2, frames * 2.0 * Math.PI / tfreq / 60);\r
                                img.centering(Mouse.position);\r
                                img.draw();\r
 \r
@@ -53,6 +53,7 @@ namespace PsychlopsSilverlight3test
 \r
                                fixation.shift(100,100);\r
                                fixation.draw(new Stroke(Color.blue, 3));\r
+                               AppState.statusBar = "dhdyr";\r
 \r
                                cnvs.flip();\r
                        }\r