Browse Source

Make the demo work better on WIndows

miguel 7 years ago
parent
commit
67732818a3
2 changed files with 29 additions and 19 deletions
  1. 4 2
      Designer/Designer.csproj
  2. 25 17
      Example/demo.cs

+ 4 - 2
Designer/Designer.csproj

@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -7,7 +7,8 @@
     <OutputType>Exe</OutputType>
     <RootNamespace>Designer</RootNamespace>
     <AssemblyName>Designer</AssemblyName>
-    <TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
+    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
+    <TargetFrameworkProfile />
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
     <DebugSymbols>true</DebugSymbols>
@@ -48,6 +49,7 @@
     </ProjectReference>
   </ItemGroup>
   <ItemGroup>
+    <None Include="app.config" />
     <None Include="packages.config" />
   </ItemGroup>
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

+ 25 - 17
Example/demo.cs

@@ -153,15 +153,14 @@ static class Demo {
 		ml2 = new Label (1, 1, "Mouse Debug Line");
 		d.Add (ml2);
 		Application.Run (d);
-	}
-
-	// 
-	// Creates a nested editor
-	static void Editor (Toplevel top)
-	{
+	}
+
+	// 
+	// Creates a nested editor
+	static void Editor(Toplevel top) {
 		var tframe = top.Frame;
-		var ntop = new Toplevel (tframe);
-		var menu = new MenuBar (new MenuBarItem [] {
+		var ntop = new Toplevel(tframe);
+		var menu = new MenuBar(new MenuBarItem[] {
 			new MenuBarItem ("_File", new MenuItem [] {
 				new MenuItem ("_Close", "", () => {Application.RequestStop ();}),
 			}),
@@ -171,18 +170,27 @@ static class Demo {
 				new MenuItem ("_Paste", "", null)
 			}),
 		});
-		ntop.Add (menu);
-
-		var win = new Window ("/etc/passwd") {
+		ntop.Add(menu);
+
+		string fname = null;
+		foreach (var s in new[] { "/etc/passwd", "c:\\windows\\win.ini" })
+			if (System.IO.File.Exists(s)) {
+				fname = s;
+				break;
+			}
+
+		var win = new Window(fname ?? "Untitled") {
 			X = 0,
-			Y = 0,
-			Width = Dim.Fill (),
-			Height = Dim.Fill ()
+			Y = 1,
+			Width = Dim.Fill(),
+			Height = Dim.Fill()
 		};
-		ntop.Add (win);
+		ntop.Add(win);
 
-		var text = new TextView (new Rect (0, 0, tframe.Width - 2, tframe.Height - 3));
-		text.Text = System.IO.File.ReadAllText ("/etc/passwd");
+		var text = new TextView(new Rect(0, 0, tframe.Width - 2, tframe.Height - 3));
+		
+		if (fname != null)
+			text.Text = System.IO.File.ReadAllText (fname);
 		win.Add (text);
 
 		Application.Run (ntop);