</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
--- /dev/null
+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
{\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
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
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
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
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
{\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
//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
\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
\r
fixation.shift(100,100);\r
fixation.draw(new Stroke(Color.blue, 3));\r
+ AppState.statusBar = "dhdyr";\r
\r
cnvs.flip();\r
}\r