-
Notifications
You must be signed in to change notification settings - Fork 26
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/bijington/expressive
- Loading branch information
Showing
122 changed files
with
3,589 additions
and
404 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<configuration> | ||
<startup> | ||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> | ||
</startup> | ||
<runtime> | ||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> | ||
<dependentAssembly> | ||
<assemblyIdentity name="System.Windows.Interactivity" publicKeyToken="31bf3856ad364e35" culture="neutral" /> | ||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /> | ||
</dependentAssembly> | ||
</assemblyBinding> | ||
</runtime> | ||
</configuration> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
<Application x:Class="Expressive.Playground.App" | ||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" | ||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" | ||
xmlns:local="clr-namespace:Expressive.Playground" | ||
StartupUri="MainWindow.xaml"> | ||
<Application.Resources> | ||
<ResourceDictionary> | ||
<ResourceDictionary.MergedDictionaries> | ||
<ResourceDictionary Source="pack://application:,,,/Selen.Wpf.Core;component/MetroWindowResources.xaml"/> | ||
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml"/> | ||
<!--<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.Tooltip.xaml"/> | ||
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.Buttons.xaml"/>--> | ||
<ResourceDictionary Source="pack://application:,,,/Selen.Wpf.Core;component/Resources.xaml"/> | ||
<ResourceDictionary Source="pack://application:,,,/Selen.Wpf.SystemStyles;component/Styles.xaml"/> | ||
</ResourceDictionary.MergedDictionaries> | ||
</ResourceDictionary> | ||
</Application.Resources> | ||
</Application> |
11 changes: 11 additions & 0 deletions
11
Source/CSharp/Expressive/Expressive.Playground/App.xaml.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
using System.Windows; | ||
|
||
namespace Expressive.Playground | ||
{ | ||
/// <summary> | ||
/// Interaction logic for App.xaml | ||
/// </summary> | ||
public partial class App : Application | ||
{ | ||
} | ||
} |
39 changes: 39 additions & 0 deletions
39
Source/CSharp/Expressive/Expressive.Playground/CustomBrush.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
using ICSharpCode.AvalonEdit.Highlighting; | ||
using ICSharpCode.AvalonEdit.Rendering; | ||
using System.Windows.Media; | ||
|
||
namespace Expressive.Playground | ||
{ | ||
internal sealed class CustomBrush : HighlightingBrush | ||
{ | ||
private readonly SolidColorBrush brush; | ||
|
||
public CustomBrush(Color color) | ||
{ | ||
brush = CreateFrozenBrush(color); | ||
} | ||
|
||
public CustomBrush(System.Drawing.Color c) | ||
{ | ||
var c2 = System.Windows.Media.Color.FromArgb(c.A, c.R, c.G, c.B); | ||
brush = CreateFrozenBrush(c2); | ||
} | ||
|
||
public override Brush GetBrush(ITextRunConstructionContext context) | ||
{ | ||
return brush; | ||
} | ||
|
||
public override string ToString() | ||
{ | ||
return brush.ToString(); | ||
} | ||
|
||
private static SolidColorBrush CreateFrozenBrush(Color color) | ||
{ | ||
SolidColorBrush brush = new SolidColorBrush(color); | ||
brush.Freeze(); | ||
return brush; | ||
} | ||
} | ||
} |
167 changes: 167 additions & 0 deletions
167
Source/CSharp/Expressive/Expressive.Playground/Expressive.Playground.csproj
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,167 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> | ||
<PropertyGroup> | ||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
<ProjectGuid>{9D60EEC0-A324-40AB-A469-2236C08B7AB6}</ProjectGuid> | ||
<OutputType>WinExe</OutputType> | ||
<AppDesignerFolder>Properties</AppDesignerFolder> | ||
<RootNamespace>Expressive.Playground</RootNamespace> | ||
<AssemblyName>Expressive.Playground</AssemblyName> | ||
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion> | ||
<FileAlignment>512</FileAlignment> | ||
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> | ||
<WarningLevel>4</WarningLevel> | ||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugSymbols>true</DebugSymbols> | ||
<DebugType>full</DebugType> | ||
<Optimize>false</Optimize> | ||
<OutputPath>bin\Debug\</OutputPath> | ||
<DefineConstants>DEBUG;TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugType>pdbonly</DebugType> | ||
<Optimize>true</Optimize> | ||
<OutputPath>bin\Release\</OutputPath> | ||
<DefineConstants>TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
</PropertyGroup> | ||
<PropertyGroup> | ||
<ApplicationIcon>Icon.ico</ApplicationIcon> | ||
</PropertyGroup> | ||
<ItemGroup> | ||
<Reference Include="ICSharpCode.AvalonEdit, Version=5.0.3.0, Culture=neutral, PublicKeyToken=9cc39be672370310, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\AvalonEdit.5.0.3\lib\Net40\ICSharpCode.AvalonEdit.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="MahApps.Metro, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\MahApps.Metro.0.1\lib\net40\MahApps.Metro.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="MahApps.Metro.Controls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\MahApps.Metro.0.1\lib\net40\MahApps.Metro.Controls.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="Selen.Wpf.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=dc472ed4b6daaa58, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\Selen.Wpf.1.0.0\lib\net45\Selen.Wpf.Core.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="Selen.Wpf.GenericAppTree, Version=1.0.0.0, Culture=neutral, PublicKeyToken=dc472ed4b6daaa58, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\Selen.Wpf.1.0.0\lib\net45\Selen.Wpf.GenericAppTree.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="Selen.Wpf.GenericAppTree.Contracts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=dc472ed4b6daaa58, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\Selen.Wpf.1.0.0\lib\net45\Selen.Wpf.GenericAppTree.Contracts.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="Selen.Wpf.SystemStyles, Version=1.0.0.0, Culture=neutral, PublicKeyToken=dc472ed4b6daaa58, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\Selen.Wpf.1.0.0\lib\net45\Selen.Wpf.SystemStyles.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="System" /> | ||
<Reference Include="System.Data" /> | ||
<Reference Include="System.Drawing" /> | ||
<Reference Include="System.Windows.Interactivity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> | ||
<HintPath>..\packages\MahApps.Metro.0.1\lib\net40\System.Windows.Interactivity.dll</HintPath> | ||
<Private>True</Private> | ||
</Reference> | ||
<Reference Include="System.Xml" /> | ||
<Reference Include="Microsoft.CSharp" /> | ||
<Reference Include="System.Core" /> | ||
<Reference Include="System.Xml.Linq" /> | ||
<Reference Include="System.Data.DataSetExtensions" /> | ||
<Reference Include="System.Net.Http" /> | ||
<Reference Include="System.Xaml"> | ||
<RequiredTargetFramework>4.0</RequiredTargetFramework> | ||
</Reference> | ||
<Reference Include="WindowsBase" /> | ||
<Reference Include="PresentationCore" /> | ||
<Reference Include="PresentationFramework" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<ApplicationDefinition Include="App.xaml"> | ||
<Generator>MSBuild:Compile</Generator> | ||
<SubType>Designer</SubType> | ||
</ApplicationDefinition> | ||
<Compile Include="CustomBrush.cs" /> | ||
<Compile Include="ExtensionMethods.cs" /> | ||
<Compile Include="FunctionCompletionData.cs" /> | ||
<Compile Include="RelayCommand.cs" /> | ||
<Compile Include="TextMarking\ITextMarker.cs" /> | ||
<Compile Include="TextMarking\ITextMarkerService.cs" /> | ||
<Compile Include="TextMarking\TextMarker.cs" /> | ||
<Compile Include="TextMarking\TextMarkerService.cs" /> | ||
<Compile Include="TextMarking\TextMarkerTypes.cs" /> | ||
<Compile Include="VariableCompletionData.cs" /> | ||
<Compile Include="VariableDescriptor.cs" /> | ||
<Page Include="MainWindow.xaml"> | ||
<Generator>MSBuild:Compile</Generator> | ||
<SubType>Designer</SubType> | ||
</Page> | ||
<Compile Include="App.xaml.cs"> | ||
<DependentUpon>App.xaml</DependentUpon> | ||
<SubType>Code</SubType> | ||
</Compile> | ||
<Compile Include="MainWindow.xaml.cs"> | ||
<DependentUpon>MainWindow.xaml</DependentUpon> | ||
<SubType>Code</SubType> | ||
</Compile> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Compile Include="MyCompletionData.cs" /> | ||
<Compile Include="Properties\AssemblyInfo.cs"> | ||
<SubType>Code</SubType> | ||
</Compile> | ||
<Compile Include="Properties\Resources.Designer.cs"> | ||
<AutoGen>True</AutoGen> | ||
<DesignTime>True</DesignTime> | ||
<DependentUpon>Resources.resx</DependentUpon> | ||
</Compile> | ||
<Compile Include="Properties\Settings.Designer.cs"> | ||
<AutoGen>True</AutoGen> | ||
<DependentUpon>Settings.settings</DependentUpon> | ||
<DesignTimeSharedInput>True</DesignTimeSharedInput> | ||
</Compile> | ||
<EmbeddedResource Include="Properties\Resources.resx"> | ||
<Generator>ResXFileCodeGenerator</Generator> | ||
<LastGenOutput>Resources.Designer.cs</LastGenOutput> | ||
</EmbeddedResource> | ||
<None Include="packages.config" /> | ||
<None Include="Properties\Settings.settings"> | ||
<Generator>SettingsSingleFileGenerator</Generator> | ||
<LastGenOutput>Settings.Designer.cs</LastGenOutput> | ||
</None> | ||
<AppDesigner Include="Properties\" /> | ||
<EmbeddedResource Include="ExpressiveSyntax.xshd"> | ||
<SubType>Designer</SubType> | ||
</EmbeddedResource> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<None Include="App.config" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<ProjectReference Include="..\Expressive\Expressive.csproj"> | ||
<Project>{64525626-8340-4f9c-9a19-f26e40d1f496}</Project> | ||
<Name>Expressive</Name> | ||
</ProjectReference> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Resource Include="Icon.ico" /> | ||
</ItemGroup> | ||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
Other similar extension points exist, see Microsoft.Common.targets. | ||
<Target Name="BeforeBuild"> | ||
</Target> | ||
<Target Name="AfterBuild"> | ||
</Target> | ||
--> | ||
</Project> |
47 changes: 47 additions & 0 deletions
47
Source/CSharp/Expressive/Expressive.Playground/ExpressiveSyntax.xshd
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
<?xml version="1.0"?> | ||
<SyntaxDefinition name="Custom Highlighting" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008"> | ||
<Color name="Comment" foreground="Green" /> | ||
<Color name="String" foreground="#83b58e" /> | ||
<Color name="Date" foreground="DarkGray" /> | ||
<Color name="Variables" foreground="#33a7a4" /> | ||
|
||
<!-- This is the main ruleset. --> | ||
<RuleSet> | ||
<Span color="Comment" begin="//" /> | ||
<Span color="Comment" multiline="true" begin="/\*" end="\*/" /> | ||
|
||
<Span color="String"> | ||
<Begin>"</Begin> | ||
<End>"</End> | ||
<RuleSet> | ||
<!-- nested span for escape sequences --> | ||
<Span begin="\\" end="." /> | ||
</RuleSet> | ||
</Span> | ||
|
||
<Span color="String"> | ||
<Begin>'</Begin> | ||
<End>'</End> | ||
<RuleSet> | ||
<!-- nested span for escape sequences --> | ||
<Span begin="\\" end="." /> | ||
</RuleSet> | ||
</Span> | ||
|
||
<Keywords foreground="#bba08c"> | ||
<Word>true</Word> | ||
<Word>false</Word> | ||
<!-- ... --> | ||
</Keywords> | ||
|
||
<!-- Digits --> | ||
<Rule foreground="#d7ba7d"> | ||
\b0[xX][0-9a-fA-F]+ # hex number | ||
| \b | ||
( \d+(\.[0-9]+)? #number with optional floating point | ||
| \.[0-9]+ #or just starting with floating point | ||
) | ||
([eE][+-]?[0-9]+)? # optional exponent | ||
</Rule> | ||
</RuleSet> | ||
</SyntaxDefinition> |
36 changes: 36 additions & 0 deletions
36
Source/CSharp/Expressive/Expressive.Playground/ExtensionMethods.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Text; | ||
using System.Threading.Tasks; | ||
using System.Xml.Linq; | ||
|
||
namespace Expressive.Playground | ||
{ | ||
public static class ExtensionMethods | ||
{ | ||
public static string SafeExtractAttributeValue(this XElement element, string attributeName) | ||
{ | ||
return element.SafeExtractAttributeValue<string>(attributeName, (s) => s); | ||
} | ||
|
||
public static T SafeExtractAttributeValue<T>(this XElement element, string attributeName, Func<string, T> typeConversion) | ||
{ | ||
return element.SafeExtractAttributeValue(attributeName, typeConversion, default(T)); | ||
} | ||
|
||
public static T SafeExtractAttributeValue<T>(this XElement element, string attributeName, Func<string, T> typeConversion, T defaultValue) | ||
{ | ||
T returnVal = defaultValue; | ||
|
||
XAttribute labelAttribute = element.Attribute(XName.Get(attributeName)); | ||
|
||
if (labelAttribute != null && !String.IsNullOrWhiteSpace(labelAttribute.Value)) | ||
{ | ||
returnVal = typeConversion(labelAttribute.Value); | ||
} | ||
|
||
return returnVal; | ||
} | ||
} | ||
} |
Oops, something went wrong.