Added source code.

This commit is contained in:
2018-02-06 01:24:46 +02:00
parent 1d9f2990c8
commit 8b28da5b80
367 changed files with 22964 additions and 0 deletions

8
Source/Help/App.xaml Normal file
View File

@ -0,0 +1,8 @@
<Application x:Class="Help.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

42
Source/Help/App.xaml.cs Normal file
View File

@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
namespace Help
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
// We need to initialize the help system now
try
{
string file = DynamicLink.Launcher.FindHelpFiles();
if (System.IO.File.Exists(file))
HelpSystem.HelpManager.Load(file);
else Properties["ERROR"] = new Exception("Could not find index file documentation\\index.xml.");
}
catch (Exception ex)
{
Properties["ERROR"] = ex;
}
// Check if we were asked to load anything
if (e.Args.Length != 0)
{
Properties["APPLICATION"] = e.Args[0];
}
// Continue
base.OnStartup(e);
}
}
}

733
Source/Help/Help.csproj Normal file
View File

@ -0,0 +1,733 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{5BF4AB9C-9AE0-44ED-B49E-09ACE92C8D89}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Help</RootNamespace>
<AssemblyName>Help</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</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|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>help-logo.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<NoWin32Manifest>true</NoWin32Manifest>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release - Publish|x86'">
<OutputPath>..\..\TibisMathematicsSuite - Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="App.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<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="HelpSystem\HelpChapter.cs" />
<Compile Include="HelpSystem\HelpHtmlWrapper.cs" />
<Compile Include="HelpSystem\HelpManager.cs" />
<Compile Include="HelpSystem\HelpTopic.cs" />
<Compile Include="MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Page Include="Styles\SearchTextbox.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<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="documentation\apps\factorizator\index.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\integrate.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\language.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\troubleshooting.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\index.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\index.bak">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\help-logo-small.png.old">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\matrixcalc-logo-2.ico.old">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\matrixcalc-logo-2.png.old">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\matrixcalc-logo.png.old">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\printable-new.indd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\printable-old.odt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\printable.pdf">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\banner.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\factorizator-logo.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\graphing-logo.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\help-home.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\help-icons.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\help-logo.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\icon-calculator.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\matrixcalc-logo.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\suite.psd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<AppDesigner Include="Properties\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Launcher\DynamicLink.csproj">
<Project>{A04B247B-6A95-462B-9E07-3337A1C158F1}</Project>
<Name>Launcher</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<COMReference Include="MSHTML">
<Guid>{3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}</Guid>
<VersionMajor>4</VersionMajor>
<VersionMinor>0</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>primary</WrapperTool>
<Isolated>False</Isolated>
<EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-back.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-clear.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-forward.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-home.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-logo-small.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-search.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help-searchopt.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="help-logo.ico" />
</ItemGroup>
<ItemGroup>
<None Include="documentation\apps\calculator\2ndf.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\abs.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\buttons.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\combinatorics.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\constants.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-2ndf0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-2ndf1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-abs-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-abs-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq3.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq4.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq5.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-combinatorics-eq6.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-constants-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-constants-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-constants-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-int-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-int-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-int-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-int-eq3.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-int-eq4.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-inverse-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\calc-ui.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\img\link.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\int.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\inverse.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\keyshortcuts.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\logexp.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\pow.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\calculator\trigonometric.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\factorizator\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\factorizator\img\interface.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\factorizator\img\link.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\factorizator\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\factorizator\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\evaluate.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\export-import.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\eval0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\eval1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\plot0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\plot1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\plot2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\plot3.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\plot4.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\pref0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\pref1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\img\pref2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\integrate.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\language.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\plot.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\preferences.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\graphing\troubleshooting.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\img\help-app-toolbar.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\img\help-nav.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\img\help-search.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\help\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\hotkeys.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\img\suite-hotkeys0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\img\suite0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\main\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\basic.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\buttons.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\calc.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\editor.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-basic0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-basic1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-basic2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-calc0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-calc1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-calc2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-calc3.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\img\matrix-editor0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\index.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\keyshortcuts.htm">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\apps\matrixcalc\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\calculator-logo.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\calculator-logo.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\factorizator-logo.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\factorizator-logo.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\graphing-logo.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\graphing-logo.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\help-logo.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\help-logo.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\matrixcalc-logo.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\matrixcalc-logo.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\suite.ico">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\icons\suite.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\background.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-2ndf0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-2ndf1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-abs-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-abs-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq3.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq4.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq5.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-combinatorics-eq6.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-constants-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-constants-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-constants-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-int-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-int-eq1.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-int-eq2.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-int-eq3.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-int-eq4.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-inverse-eq0.gif">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\calc-ui.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-back.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-clear.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-forward.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-home.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-search.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\help-searchopt.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\link.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-basic0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-basic1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-basic2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-calc0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-calc1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-calc2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-calc3.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\matrix-editor0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\suite-hotkeys0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\suite-updates0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\img\suite0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\index.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\resources\banner-noback.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\resources\banner.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\style.css">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\banner-noback.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\banner.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\1.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\3.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\4.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\5.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\6.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\7.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\8.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\9.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\A.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\B.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\C.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\D.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\E.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\F.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\G.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\H.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\I.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\numbers\J.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="documentation\temp\suite.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</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>

View File

@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Help.HelpSystem
{
public class HelpChapter
{
private List<HelpTopic> topics = new List<HelpTopic>();
public List<HelpTopic> Topics { get { return topics; } }
public string Application { get; set; }
public string Title { get; set; }
public string Filename { get; set; }
public HelpChapter(string app = "", string title = "", string filename = "")
{
Application = app; Title = title; Filename = filename;
}
}
}

View File

@ -0,0 +1,54 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Help.HelpSystem
{
public static class HelpHtmlWrapper
{
public static void Find(object Document, string text)
{
var doc = Document as mshtml.IHTMLDocument2;
if (doc == null || doc.body == null || text == "") return;
string html = doc.body.innerHTML;
string temp = "";
int index = html.IndexOf(text, StringComparison.CurrentCultureIgnoreCase);
while (index != -1)
{
int min = html.IndexOf('<', index);
int max = html.IndexOf('>', index);
if (min <= max)
{
temp = "<span style=\"background: magenta;\">" + html.Substring(index, text.Length) + "</span>";
html = html.Substring(0, index) + temp + html.Substring(index + text.Length);
index += temp.Length - text.Length;
}
index = html.IndexOf(text, index + 1, StringComparison.CurrentCultureIgnoreCase);
}
doc.body.innerHTML = html;
}
public static string GetHtml(object document)
{
var doc = document as mshtml.IHTMLDocument2;
if (doc == null || doc.body == null) return "";
return doc.body.innerHTML;
}
public static void SetHtml(object document, string html)
{
var doc = document as mshtml.IHTMLDocument2;
if (doc == null || doc.body == null) return;
doc.body.innerHTML = html;
}
}
}

View File

@ -0,0 +1,134 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
namespace Help.HelpSystem
{
static class HelpManager
{
public static List<HelpChapter> Chapters = new List<HelpChapter>();
public static string DocumentationPath = "";
public static string GetFullPath(string relative)
{
return System.IO.Path.Combine(DocumentationPath, relative);
}
public static void Load(string indexfile)
{
XmlTextReader reader = new XmlTextReader(indexfile);
HelpChapter currentChapter = new HelpChapter();
HelpTopic currentTopic = new HelpTopic();
bool isTopic = false;
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
if (reader.Name == "chapter")
{
isTopic = false;
currentChapter = new HelpChapter();
}
else if (reader.Name == "topic")
{
isTopic = true;
currentTopic = new HelpTopic();
}
while (reader.MoveToNextAttribute())
{
switch (reader.Name)
{
case "application": if (!isTopic) currentChapter.Application = reader.Value; break;
case "title":
if (isTopic) currentTopic.Title = reader.Value;
else currentChapter.Title = reader.Value;
break;
case "filename":
if (isTopic) currentTopic.Filename = reader.Value;
else currentChapter.Filename = reader.Value;
break;
}
}
if (isTopic) currentChapter.Topics.Add(currentTopic);
break;
case XmlNodeType.EndElement:
if (reader.Name == "topic") currentChapter.Topics.Add(currentTopic);
else if (reader.Name == "chapter") Chapters.Add(currentChapter);
break;
}
}
reader.Close();
DocumentationPath = System.IO.Path.GetDirectoryName(indexfile);
}
private static string[] FindInFile(string file, string q)
{
int min, max;
string text = System.IO.File.ReadAllText(file);
List<string> ret = new List<string>();
// Remove html tags
min = text.IndexOf('<');
max = text.IndexOf('>');
while (min != -1 && max != -1 && min < max)
{
text = text.Remove(min, max - min + 1);
min = text.IndexOf('<');
max = text.IndexOf('>');
}
// Search each line
foreach (var line in text.Split('\n', '\r'))
if (line.ToLower().Contains(q.ToLower())) ret.Add(line.TrimStart(' ', '\t', '\n', '\r'));
return ret.ToArray();
}
public static HelpTopic[] SearchText(string text, HelpChapter chapter)
{
var list = new List<HelpTopic>();
// Make a list of files to be checked
var temp = new List<HelpTopic>();
temp.Add(new HelpTopic(chapter.Title, chapter.Filename));
temp.AddRange(chapter.Topics);
// Search
foreach (var top in temp)
{
string[] f = FindInFile(GetFullPath(top.Filename), text);
foreach (var i in f)
list.Add(new HelpTopic()
{
Title = top.Title,
Filename = top.Filename,
Context = i,
IsSearchResult = true
});
}
return list.ToArray();
}
public static HelpTopic[] SearchTitle(string text, HelpChapter chapter)
{
return chapter.Topics.Where(x => x.Title.ToLower().Contains(text.ToLower())).ToArray();
}
}
}

View File

@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Help.HelpSystem
{
public class HelpTopic
{
public string Title { get; set; }
public string Filename { get; set; }
public string Context { get; set; }
public bool IsSearchResult { get; set; }
public HelpTopic(string title = "", string filename = "", string context = "")
{
Title = title; Filename = filename;
Context = context;
IsSearchResult = (context != "");
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

137
Source/Help/MainWindow.xaml Normal file
View File

@ -0,0 +1,137 @@
<Window x:Class="Help.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Help" Height="550" Width="900" WindowStartupLocation="Manual"
Icon="/Help;component/help-logo.ico">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles/SearchTextbox.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200px" Name="asdf"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ToolBarTray Grid.ColumnSpan="100">
<ToolBar Name="toolbarNavigation" >
<TextBlock VerticalAlignment="Center" Margin="2,0,5,0"
Foreground="Gray">Navigation:</TextBlock>
<Button Name="bBrowseBack" ToolTip="Back"
Click="bBrowseBack_Click"
IsEnabled="False"
IsEnabledChanged="Button_IsEnabledChanged">
<Image Width="16" Height="16" Source="/Help;component/Images/help-back.png" />
</Button>
<Button Name="bBrowseForward" ToolTip="Forward"
Click="bBrowseForward_Click"
IsEnabled="False"
IsEnabledChanged="Button_IsEnabledChanged">
<Image Width="16" Height="16" Source="/Help;component/Images/help-forward.png" />
</Button>
<Separator />
<Button Name="bBrowseHome" ToolTip="Home"
Click="bBrowseHome_Click">
<Image Width="16" Height="16" Source="/Help;component/Images/help-home.png" />
</Button>
</ToolBar>
<ToolBar Name="toolbarApplication">
<TextBlock VerticalAlignment="Center" Margin="2,0,5,0"
Foreground="Gray">Application:</TextBlock>
<ComboBox Name="listChapters" Width="130"
SelectionChanged="listChapters_SelectionChanged" >
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Title}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</ToolBar>
<ToolBar Name="toolbarSearch" >
<TextBox Name="textSearch" Style="{StaticResource SearchBoxStyle}"
Width="150" KeyDown="textSearch_KeyDown"
/>
<Button Name="bSearch"
ToolTip="Search"
IsEnabledChanged="Button_IsEnabledChanged"
Click="bSearch_Click">
<Image Width="16" Height="16" Source="/Help;component/Images/help-search.png" />
</Button>
<Button Name="bClear" Visibility="Collapsed"
ToolTip="Clear search"
IsEnabledChanged="Button_IsEnabledChanged"
Click="bClear_Click">
<Image Width="16" Height="16" Source="/Help;component/Images/help-clear.png" />
</Button>
<Button Name="bSearchOptions" ToolTip="Search options"
Click="bSearchOptions_Click"
IsEnabledChanged="Button_IsEnabledChanged">
<Image Width="16" Height="16" Source="/Help;component/Images/help-searchopt.png" />
<Button.ContextMenu>
<ContextMenu>
<RadioButton Name="searchTitleOnly" IsChecked="True">Search title</RadioButton>
<RadioButton Name="searchContent">Search content</RadioButton>
<RadioButton Name="searchPage" >Search in current page</RadioButton>
</ContextMenu>
</Button.ContextMenu>
</Button>
</ToolBar>
</ToolBarTray>
<ListView
Name="listTopics"
Grid.Row="2" Grid.Column="0"
SelectionChanged="listTopics_SelectionChanged">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding Title}" />
<TextBlock Name="context" Foreground="DarkGray"
FontSize="10"
Margin="0,0,0,5" Text="{Binding Context}"
Visibility="Collapsed"/>
</StackPanel>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding IsSearchResult}" Value="True">
<Setter TargetName="context" Property="Visibility" Value="Visible" />
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
<GridSplitter Grid.Row="1" Grid.RowSpan="2" Grid.Column="1"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"></GridSplitter>
<WebBrowser Name="webBrowser" Grid.Row="2" Grid.Column="2"
Navigated="webBrowser_Navigated" />
</Grid>
</Window>

View File

@ -0,0 +1,219 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace Help
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
string searchSavedHtml = string.Empty;
int searchLastType = -1;
public MainWindow()
{
InitializeComponent();
PopulateChapters();
if (HelpSystem.HelpManager.Chapters.Count != 0)
PopulateTopics();
// Check for errors, exceptions
if (Application.Current.Properties.Contains("ERROR"))
{
var ex = Application.Current.Properties["ERROR"] as Exception;
if (ex != null) MessageBox.Show(ex.Message, "Could not load the help documents.", MessageBoxButton.OK, MessageBoxImage.Error);
}
// Check for arguments
if (Application.Current.Properties.Contains("APPLICATION"))
SetApplication(Application.Current.Properties["APPLICATION"].ToString());
}
public void SetApplication(string application)
{
int item = HelpSystem.HelpManager.Chapters.FindIndex(x => x.Application == application);
if (item != -1) this.listChapters.SelectedItem = HelpSystem.HelpManager.Chapters[item];
}
#region Populate routines
public void PopulateChapters()
{
foreach (var i in HelpSystem.HelpManager.Chapters)
listChapters.Items.Add(i);
listChapters.SelectedIndex = 0;
}
public void PopulateTopics()
{
var chapter = listChapters.SelectedItem as HelpSystem.HelpChapter;
if (chapter == null) return;
this.listTopics.Items.Clear();
// Populate
foreach (var i in chapter.Topics)
listTopics.Items.Add(i);
}
public void PopulateTopics(IEnumerable<HelpSystem.HelpTopic> topics)
{
this.listTopics.Items.Clear();
foreach (var i in topics) listTopics.Items.Add(i);
}
#endregion
#region User input
private void Button_IsEnabledChanged(object sender, DependencyPropertyChangedEventArgs e)
{
Button b = sender as Button;
if (b == null) return;
b.Opacity = (b.IsEnabled) ? 1.0 : .5;
}
#region Search function
private void bSearchOptions_Click(object sender, RoutedEventArgs e)
{
bSearchOptions.ContextMenu.IsOpen = true;
}
private void bSearchHandler()
{
if (textSearch.Text == "") return;
// Hide search button, and show clear button
bClear.Visibility = System.Windows.Visibility.Visible;
bSearch.Visibility = System.Windows.Visibility.Collapsed;
// Clear previous searches
if (searchLastType != -1) clearSearchCommon();
// Search title only
if (searchTitleOnly.IsChecked.HasValue && searchTitleOnly.IsChecked.Value)
{
var temp = listChapters.SelectedItem as HelpSystem.HelpChapter;
if (temp == null) return;
listTopics.Items.Clear();
PopulateTopics(HelpSystem.HelpManager.SearchTitle(textSearch.Text, temp));
}
else if (searchContent.IsChecked.HasValue && searchContent.IsChecked.Value)
{
var temp = listChapters.SelectedItem as HelpSystem.HelpChapter;
if (temp == null) return;
listTopics.Items.Clear();
PopulateTopics(HelpSystem.HelpManager.SearchText(textSearch.Text, temp));
}
else if (searchPage.IsChecked.HasValue && searchPage.IsChecked.Value)
{
searchSavedHtml = HelpSystem.HelpHtmlWrapper.GetHtml(webBrowser.Document);
HelpSystem.HelpHtmlWrapper.Find(webBrowser.Document, textSearch.Text);
searchLastType = 3;
}
}
private void clearSearchCommon()
{
if (searchLastType == 3) HelpSystem.HelpHtmlWrapper.SetHtml(webBrowser.Document, searchSavedHtml);
else PopulateTopics();
searchLastType = -1;
}
private void bClear_Click(object sender, RoutedEventArgs e)
{
bClear.Visibility = System.Windows.Visibility.Collapsed;
bSearch.Visibility = System.Windows.Visibility.Visible;
textSearch.Clear();
clearSearchCommon();
}
private void bSearch_Click(object sender, RoutedEventArgs e)
{
bSearchHandler();
}
private void textSearch_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Return)
{
e.Handled = true;
bSearchHandler();
}
}
#endregion
#region Web Browser
private void bBrowseBack_Click(object sender, RoutedEventArgs e)
{
webBrowser.GoBack();
}
private void bBrowseForward_Click(object sender, RoutedEventArgs e)
{
webBrowser.GoForward();
}
private void bBrowseHome_Click(object sender, RoutedEventArgs e)
{
var item = listChapters.SelectedItem as HelpSystem.HelpChapter;
if (item != null) webBrowser.Navigate(new Uri(HelpSystem.HelpManager.GetFullPath(item.Filename)));
}
private void webBrowser_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e)
{
if (searchLastType == 3) bClear_Click(this, new RoutedEventArgs());
bBrowseBack.IsEnabled = webBrowser.CanGoBack;
bBrowseForward.IsEnabled = webBrowser.CanGoForward;
}
#endregion
#region Navigation
private void listTopics_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var sel = listTopics.SelectedItem as HelpSystem.HelpTopic;
if (sel != null) webBrowser.Navigate(new Uri(HelpSystem.HelpManager.GetFullPath(sel.Filename)));
}
private void listChapters_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var sel = listChapters.SelectedItem as HelpSystem.HelpChapter;
if (sel != null)
{
webBrowser.Navigate(new Uri(HelpSystem.HelpManager.GetFullPath(sel.Filename)));
PopulateTopics();
}
}
#endregion
#endregion
}
}

View File

@ -0,0 +1,55 @@
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Help")]
[assembly: AssemblyDescription("Displays help content.")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Tibi Software")]
[assembly: AssemblyProduct("Tibi's Mathematics Suite")]
[assembly: AssemblyCopyright("Copyright © 2012")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
//In order to begin building localizable applications, set
//<UICulture>CultureYouAreCodingWith</UICulture> in your .csproj file
//inside a <PropertyGroup>. For example, if you are using US english
//in your source files, set the <UICulture> to en-US. Then uncomment
//the NeutralResourceLanguage attribute below. Update the "en-US" in
//the line below to match the UICulture setting in the project file.
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.261
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Help.Properties
{
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Help.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
return resourceCulture;
}
set
{
resourceCulture = value;
}
}
}
}

View File

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.261
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Help.Properties
{
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
{
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default
{
get
{
return defaultInstance;
}
}
}
}

View File

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@ -0,0 +1,43 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="SearchBoxStyle" TargetType="{x:Type TextBox}">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="MinHeight" Value="20" />
<Setter Property="MinWidth" Value="100" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Border Name="border"
Background="White"
BorderBrush="White" BorderThickness="1"
Padding="4,2,4,2">
<Grid>
<TextBlock Name="text" Visibility="Hidden"
VerticalAlignment="Center"
Foreground="Gray"
FontStyle="Italic">Search</TextBlock>
<ScrollViewer VerticalAlignment="Center" x:Name="PART_ContentHost" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="Text" Value="">
<Setter TargetName="text" Property="Visibility" Value="Visible" />
</Trigger>
<Trigger Property="IsFocused" Value="True">
<Setter TargetName="text" Property="Visibility" Value="Hidden" />
<Setter TargetName="border" Property="BorderBrush" Value="DodgerBlue" />
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="BorderBrush" Value="DodgerBlue" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

View File

@ -0,0 +1,50 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: 2nd function button</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: 2nd function button</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#description">Description</a></li>
<li><a href="#example">Example</a></li>
</ul>
</div>
<div class="section">
<div class="captioned_image_right" >
<img class="shadow" src="img/calc-2ndf0.png"/><br>
<span style="font-size: 10pt"> When activated, an indicator shows up on the display. </span>
</div>
<a name="description"></a>
<h2>Description</h2>
<p>The 2nd function button is used to <strong>change the function of a button</strong> when clicked.</p>
<p>Usually, the 2nd function is the inverse of the function the button is assigned to. The exact function is displayed in <strong>gray above each button</strong>. You can find more information about the function and 2nd function of a button when hovering over the button with the mouse.</p>
<p>You can also use the 2nd function of a button using the <strong>right mouse button</strong>.</p>
</div>
<div class="section">
<a name="description"></a>
<h2>Example</h2>
<img class="shadow" src="img/calc-2ndf1.png" style="float:left; margin-right:10px; margin-bottom:10px; "/>
<p>To calculate the square root of a number, you have to press <i>2ndf</i> and then the <i>x<sup>2</sup></i> button. </p>
<p><strong>Note: </strong>You can also right click the <i>x<sup>2</sup></i> button.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,41 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Absolute</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: Absolute</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#description">Description</a></li>
<li><a href="#example">Example</a></li>
</ul>
</div>
<div class="section">
<a name="description"></a>
<h2>Description</h2>
<p>In mathematics, the absolute (modulus) of a number, denoted by <strong>|n|</strong>, is equal to the number without regard to its sign. </p>
</div>
<div class="section">
<a name="description"></a>
<h2>Examples</h2>
<img class="maths" src="img/calc-abs-eq0.gif"><br />
<img class="maths" src="img/calc-abs-eq1.gif">
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,377 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Buttons</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
td.but {
border: 1px solid black;
border-radius: 5px;
padding: 2px;
margin: -2px;
font-size: 10pt;
text-align: center;
}
td.but2 {
margin-top: 5px;
font-size: 9pt;
text-align: center;
color:gray;
padding: 0;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 100%;
padding-left: 10px;
}
td {
font-size: 11pt;
padding-left: 10px;
}
td.r {
text-align: right;
}
</style>
</head>
<body>
<h1>Scientific Calculator: Buttons</h1>
<div class="section">
<h2>Buttons</h2>
<table>
<tr>
<th>Button </th> <th id="main">Description </th> <th>Article</th>
</tr>
<tr>
<td class="but">+</td>
<td>Adds a number to another.</td>
</tr>
<tr>
<td class="but">-</td>
<td>Subtracts a number from another.</td>
</tr>
<tr>
<td class="but">*</td>
<td>Multiplies 2 numbers.</td>
</tr>
<tr>
<td class="but">/</td>
<td>Divide a number by another.</td>
</tr>
<tr>
<td class="but"><EFBFBD></td>
<td>Toggle sign.</td>
</tr>
<tr>
<td class="but">MOD</td>
<td>Calculates the remainder of division between 2 numbers.</td>
</tr>
<tr>
<td class="but">AC</td>
<td>Resets any calculation.</td>
</tr>
<tr>
<td class="but">Clear</td>
<td>Deletes the current number.</td>
</tr>
<tr>
<td class="but">&#9003;</td>
<td>Removes the last inserted number.</td>
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but">Help</td>
<td>Opens help for the application.</td>
</tr>
<tr>
<td class="but">M+</td>
<td>Adds the number on the display to memory.</td>
</tr>
<tr>
<td class="but">M-</td>
<td>Subtracts the number on the display from memory.</td>
</tr>
<tr>
<td class="but">MC</td>
<td><em>Memory Clear:</em> Clears the memory content.</td>
</tr>
<tr>
<td class="but">MS</td>
<td><em>Memory Set:</em> Sets the memory content to the number on the display.</td>
</tr>
<tr>
<td class="but">MR</td>
<td><em>Memory Recall:</em> Displays the memory content on the display.</td>
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but">2ndf</td>
<td>Activates alternative function for the next button pressed.</td>
<td class="r"><a href="2ndf.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but2">e<sup>n</sup></td>
<td>Exponential function.</td>
<!-- <td class="r"><a href="logexp.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">ln</td>
<td>Calculates natural logarithm.</td>
<!-- <td class="r"><a href="logexp.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">10<sup>n</sup></td>
<td>Calculates 10 at nth power.</td>
<!-- <td class="r"><a href="logexp.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">log</td>
<td>Calculates decimal logarithm.</td>
<!-- <td class="r"><a href="logexp.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">log<sub>n</sub> x</td>
<td>Calculates logarithm of x in base n.</td>
<!-- <td class="r"><a href="logexp.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but2">{x}</td>
<td>Calculates fractional part of a number.</td>
<td class="r"><a href="int.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">[x]</td>
<td>Calculates integer part of a number.</td>
<td class="r"><a href="int.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but2">-Abs</td>
<td>Calculates negative absolute of a number.</td>
<td class="r"><a href="abs.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">Abs</td>
<td>Calculates absolute of a number.</td>
<td class="r"><a href="abs.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">1/x</td>
<td>Calculates the multiplicative inverse of a number.</td>
<td class="r"><a href="inverse.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but2"><sup>n</sup>&#8730;x</td>
<td>Calculates nth root of a number.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">x<sup>n</sup></td>
<td>Calculates x at nth power.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but2">arcsin</td>
<td>Calculates arcsine of a number (result is in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">sin</td>
<td>Calculates sine of a number (in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">arccos</td>
<td>Calculates arccosine of a number (result is in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">cos</td>
<td>Calculates cosine of a number (in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">arctan</td>
<td>Calculates arctangent of a number (result is in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">tan</td>
<td>Calculates tangent of a number (in radians).</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">&#8730;x</td>
<td>Calculates square root of a number.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">x<sup>2</sup></td>
<td>Calculates x squared.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but2">arcsinh</td>
<td>Calculates hyperbolic arcsine of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">sinh</td>
<td>Calculates hyperbolic sine of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">arccosh</td>
<td>Calculates hyperbolic arccosine of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">cosh</td>
<td>Calculates hyperbolic cosine of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2">arctanh</td>
<td>Calculates hyperbolic arctangent of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">tanh</td>
<td>Calculates hyperbolic tangent of a number.</td>
<!-- <td class="r"><a href="trigonometric.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but2"><sup>3</sup>&#8730;x</td>
<td>Calculates cube root of a number.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr>
<td class="but">x<sup>3</sup></td>
<td>Calculates cube of x.</td>
<!-- <td class="r"><a href="pow.htm"><img src="img/link.png" /></a></td> -->
</tr>
<tr> <td>&nbsp;</td></tr>
<tr>
<td class="but2" style="font-family: serif;">2&pi;</td>
<td>Displays double value of pi.</td>
<td class="r"><a href="constants.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but" style="font-family: serif;">2&pi;</td>
<td>Displays pi constant.</td>
<td class="r"><a href="constants.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">e</td>
<td>Displays e constant.</td>
<td class="r"><a href="constants.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but2">xPy</td>
<td>Calculates arrangements of y items from x.</td>
<td class="r"><a href="combinatorics.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">xCy</td>
<td>Calculates combinations of y items from x.</td>
<td class="r"><a href="combinatorics.htm"><img src="img/link.png" /></a></td>
</tr>
<tr>
<td class="but">x!</td>
<td>Calculates factorial of x.</td>
<td class="r"><a href="combinatorics.htm"><img src="img/link.png" /></a></td>
</tr>
</table>
<br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,90 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Combinatorics</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: Combinatorics</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#fact">Factorial</a></li>
<li><a href="#perm">Permutations</a></li>
<li><a href="#permk">Permutations of k objects</a></li>
<li><a href="#comb">Combinations</a></li>
</ul>
</div>
<div class="section">
<a name="fact"></a>
<h2>Factorial</h2>
<p>In mathematics, the <em>factorial</em> of a natural number, denoted by <strong>n!</strong>, is the <em>product of all natural numbers smaller or equal to <strong>n</strong></em>.</p>
<img class="maths" src="img/calc-combinatorics-eq0.gif" />
<p>This can also be written as:</p>
<img class="maths" src="img/calc-combinatorics-eq1.gif" />
<p>By convention, <strong>0! = 1</strong>.</p>
<p>Example:</p>
<img class="maths" src="img/calc-combinatorics-eq2.gif" />
<br /> <br />
</div>
<div class="section">
<a name="perm"></a>
<h2>Permutations</h2>
<p>In mathematics, a <em>permutation</em> of a set of objects is defined as <em>a particular order</em> of the items.</p>
<p>For example, the permutations of the set <strong>{1, 2, 3}</strong> are:<br /> (1, 2, 3); (1, 3, 2); (2, 1, 3); (2, 3, 1); (3, 1, 2); (3, 2, 1);</p>
<p>The number of permutations for a set is given by <strong>n!</strong>.</p>
<br />
</div>
<div class="section">
<a name="permk"></a>
<h2>Permutations of k objects</h2>
<p>Example: the permutations of 2 items from the set <strong>{1, 2, 3}</strong> are:<br />
(1, 2); (2, 1); (1, 3); (3, 1); (2, 3); (3, 2); </p>
<p>The number of permutations of k objects is given by the formula:</p>
<img class="maths" src="img/calc-combinatorics-eq5.gif" />
<p> After making the simplifications, we get:</p>
<img class="maths" src="img/calc-combinatorics-eq6.gif" />
<br /> <br />
</div>
<div class="section">
<a name="comb"></a>
<h2>Combinations</h2>
<p>In mathematics, a <em>combination</em> is a method of selecting a number of objects from a larger set, where order doesn't matter.</p>
<p>For example, the combinations of 2 items from the set <strong>{1, 2, 3}</strong> are:<br />
{1, 2}; {1, 3}; {2, 3}; </p>
<p> The number of combinations is given by the formula:</p>
<img class="maths" src="img/calc-combinatorics-eq3.gif" />
<p> After making the simplifications, we get:</p>
<img class="maths" src="img/calc-combinatorics-eq4.gif" />
<br /><br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,53 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Constants</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: Constants</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#pi"><span style="font-family:serif;"/>&pi;</span> (pi)</a></li>
<li><a href="#e"><em>e</em></a></li>
</ul>
</div>
<div class="section">
<a name="pi"> </a>
<h2><span style="font-family:serif;"/>&pi;</span></h2>
<p><span style="font-family:serif;"/><strong>&pi;</strong></span> (sometimes written <strong>pi</strong>) is a mathematical constant that is the ratio of any Euclidian circle's circumference to its diameter.</p>
<p>The approximate value of pi is:</p>
<img class="maths" src="img/calc-constants-eq0.gif" />
<p>Pi has many uses in mathematics, science and engineering, making it one of the most important constants. <!-- For some additional information about pi in mathematics (geometry), you can check the <a href="calculator-trigonometric.htm">trigonometry</a> section. --></p>
</div>
<div class="section">
<a name="pi"> </a>
<h2><em>e</em></h2>
<p><em><strong>e</strong></em> is an important mathematical constant that is the base of <!--<a href="calculator-logexp.htm">--> natural logarithms<!--</a>-->.</p>
<p>The constant is the result of the following limit:</p>
<img class="maths" src="img/calc-constants-eq1.gif" />
<p>The approximate value of <em>e</em> is:</p>
<img class="maths" src="img/calc-constants-eq2.gif" />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 664 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 569 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 743 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 637 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1009 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 702 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 523 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 947 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 998 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 988 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

View File

@ -0,0 +1,83 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#ui">The user interface</a></li>
<li><a href="#limits">Limitations</a></li>
<li><a href="#articles">Calculator articles</a></li>
</ul>
</div>
<div class="section">
<a name="ui"></a>
<h2>The user interface</h2>
<img src="img/calc-ui.png"/>
<ol>
<li>Display</li>
<li>Indicator area</li>
<li>Clearing functions and help</li>
<li>Basic operators</li>
<li>Numeric keys</li>
<li>Memory functions</li>
<li>Advanced functions</li>
</ol>
</div>
<div class="section">
<a name="limits"></a>
<h2>Limitations</h2>
<p>The calculator is limited to 64bit floating point numbers (approximate range: <20>5.0 <20> 10<sup>-324</sup> to <20>1.7 <20> 10<sup>308</sup>, or 15-16 digits).</p>
</div>
<div class="section">
<a name="articles"></a>
<h2>Calculator articles</h2>
<h3>Basic functionality</h3>
<ul>
<li><a href="keyshortcuts.htm">
Keyboard shortcuts</a></li>
<li><a href="buttons.htm">
What all the buttons do</a></li>
</ul>
<h3>Advanced functionality</h3>
<ul>
<li><a href="2ndf.htm">
2nd function button</a></li>
<li><a href="inverse.htm">
Multiplicative inverse</a></li>
<li><a href="abs.htm">
Absolute</a></li>
<li><a href="int.htm">
Integer and fractional part</a></li>
<li><a href="constants.htm">
Constants</a></li>
<li><a href="combinatorics.htm">
Combinatorics</a></li>
<li><a href="pow.htm">
Powers and roots</a></li>
<li><a href="logexp.htm">
Logarithm and exponential functions</a></li>
<li><a href="trigonometric.htm">
Trigonometric functions</a></li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,63 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Integer and fractional part</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: Integer and fractional part</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#int">Integer part</a></li>
<li><a href="#frac">Fractional part</a></li>
</ul>
</div>
<div class="section">
<a name="int"></a>
<h2>Integer part</h2>
<p>In mathematics, the <strong>floor</strong> (also known as the <em>integer part</em>) of a number <em>n</em> is the biggest integer number that is smaller than <em>n</em>.</p>
<p>The <strong>ceiling</strong> of a number <em>n</em> is the smallest integer number that is greater than <em>n</em>.</p>
<br />
<h3>Notation:</h3>
<p>The floor (integer part) of a number <em>n</em>: [n] = &lfloor;n&rfloor;</p>
<p>The ceiling: &lceil;n&rceil;</p>
<br />
<h3>Examples:</h3><br />
<img class="maths" src="img/calc-int-eq0.gif" /> <br />
<img class="maths" src="img/calc-int-eq1.gif" /> <br /> <br />
</div>
<div class="section">
<a name="frac"></a>
<h2>Fractional part</h2>
<p>In mathematics, any real number can be written as <em>n</em> + <em>r</em>, where <em>n</em> is an integer, and <em>r</em> (the fractional part) is a nonnegative real number smaller than 1.</p>
<p>The fractional part of a number <em>n</em> can be written as the difference between <em>n</em> and its integer part (floor):</p>
<img class="maths" src="img/calc-int-eq2.gif" />
<br />
<h3>Examples:</h3><br />
<img class="maths" src="img/calc-int-eq3.gif" /> <br />
<img class="maths" src="img/calc-int-eq4.gif" /> <br /> <br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,28 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Multiplicative inverse</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Scientific Calculator: Multiplicative inverse</h1>
<div class="section">
<h2>Multiplicative inverse</h2>
<p>In mathematics, the <strong>multiplicative inverse</strong> of a number <em>n</em> is a number which, when multiplied by <em>n</em>, yields the multiplicative identity <em>1</em>.</p>
<p>The multiplicative inverse of a number <em>n</em> is denoted by:</p>
<img class="maths" src="img/calc-inverse-eq0.gif" /> <br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,130 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Scientific Calculator: Keyboard shortcuts</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
td.but {
border: 1px solid black;
border-radius: 5px;
padding: 2px;
margin: -2px;
font-size: 10pt;
text-align: center;
}
td.but2 {
margin-top: 5px;
font-size: 9pt;
text-align: center;
color:gray;
padding: 0;
}
td.key {
font-family: Consolas, monospace;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 100%;
padding-left: 10px;
}
td {
font-size: 11pt;
padding-left: 10px;
}
td.r {
text-align: right;
}
</style>
</head>
<body>
<h1>Scientific Calculator: Keyboard shortcuts</h1>
<div class="section">
<h2>Keyboard shortcuts</h2>
<table>
<tr>
<th>Key combination</th> <th>Button equivalent</th> <th id="main">Action </th>
</tr>
<tr>
<td class="key">Num+ (+)</td>
<td class="but">+</td>
<td>Adds a number to another.</td>
</tr>
<tr>
<td class="key">Num- (-)</td>
<td class="but">-</td>
<td>Subtracts a number from another.</td>
</tr>
<tr>
<td class="key">Num*</td>
<td class="but">*</td>
<td>Multiplies 2 numbers.</td>
</tr>
<tr>
<td class="key">Num/ (/)</td>
<td class="but">/</td>
<td>Divide a number by another.</td>
</tr>
<tr>
<td class="key">Escape</td>
<td class="but">AC</td>
<td>Resets any calculation.</td>
</tr>
<tr>
<td class="key">Delete</td>
<td class="but">Clear</td>
<td>Deletes the current number.</td>
</tr>
<tr>
<td class="key">Backspace</td>
<td class="but">&#9003;</td>
<td>Removes the last inserted number.</td>
</tr>
<tr>
<td class="key">F1</td>
<td class="but">Help</td>
<td>Opens help for the application.</td>
</tr>
<tr>
<td class="key">Enter</td>
<td class="but">=</td>
<td>Performs the calculation.</td>
</tr>
<tr>
<td class="key">Ctrl + Q</td>
<td></td>
<td>Closes the application.</td>
</tr>
</table>
<br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
<html>
<head>
<title>Calculator Help</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Hello world! :) </h1>
<span>My name is <strong>Tibi</strong>. </span>
</body>
</html>

View File

@ -0,0 +1,11 @@
<html>
<head>
<title>Calculator Help</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Hello world! :) </h1>
<span>My name is <strong>Tibi</strong>. </span>
</body>
</html>

View File

@ -0,0 +1,119 @@
body {
font-family: Verdana, sans-serif;
font-size: 10.5pt;
background: #F0F0F0;
margin:0px;
padding: 5px;
/*filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#A0A0A0');
background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#A0A0A0));
background: -moz-linear-gradient(top, #F0F0F0, #A0A0A0);*/
background-image: url("img/background.png");
background-repeat: repeat-x;
background-position: top center;
background-attachment: fixed;
}
.section {
margin: 5px;
margin-top: 10px;
padding: 5px;
padding-left: 15px;
min-width: 600px;
border: 1px solid silver;
background-color: #F5F5F5;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-mox-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-webkig-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
}
.footer {
margin-top: 20px;
color: #777;
text-align: center;
font-size: 10pt;
}
a {
text-decoration: none;
color: #248AC9;
}
a:hover {
color: #8DCFF7;
}
a > img {
border: 0px;
}
h1 {
margin:5px;
margin-bottom: 15px;
font-size: 18pt;
font-family: Arial, sans-serif;
font-weight: normal;
color: #606060;
}
h1:hover {
color: #909090;
}
h2 {
margin-top: -2px;
margin-left: -7px;
margin-bottom: 15px;
font-family: Arial, sans-serif;
font-size: 13pt;
font-weight: bold;
color: Silver;
}
h3 {
margin-top: 10px;
margin-bottom: -10px;
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #555;
}
img.shadow {
background: white;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
}
img.maths {
margin-left: 2em;
margin-bottom: 5px;
}
.captioned_image_right {
float:right;
margin-left: 10px;
margin-bottom: 10px;
text-align: center;
background: white;
padding:5px;
width:150px;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

View File

@ -0,0 +1,11 @@
<html>
<head>
<title>Calculator Help</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Hello world! :) </h1>
<span>My name is <strong>Tibi</strong>. </span>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

View File

@ -0,0 +1,116 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Factorizator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
td.key {
font-family: Consolas, monospace;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 65%;
padding-left: 10px;
}
td {
font-size: 11pt;
padding-left: 10px;
}
li {
margin-bottom: 4px;
}
</style>
</head>
<body>
<h1>Factorizator</h1>
<div class="section">
<h2>Factorizator topics</h2>
<ul>
<li><a href="#start">
Getting started</a></li>
<li><a href="#ui">
The user interface</a></li>
<li><a href="#keys">
Keyboard shortcuts</a></li>
<li><a href="#limits">
Limitations</a></li>
</ul>
</div>
<div class="section">
<a name="start"> </a>
<h2>Getting started</h2>
<p>The <strong>Factorizator</strong> is an application which displays the <em>factorization</em> of natural numbers. <em>Factorization</em> is defined as the decomposition of the number into prime factors, which multiplied will yeld the original number.</p>
<p>Using the application is very simple, one has to simply type a number in the input text box, and press <em>Calculate</em> (or Enter key). The result is displayed in the <em>Factorization</em> area. The first column shows the original numbers divided by the last divisor, and in the divisor column, the divisors are listed.</p>
</div>
<div class="section">
<a name="ui"> </a>
<h2>The user interface</h2>
<img src="img/interface.png"/>
<ol>
<li><strong>Input number</strong>: this is where a number is written.</li>
<li><strong>Calculate button</strong>: press this button (or the Enter key) to begin calculation.</li>
<li><strong>Remainder column</strong>: the result of the previous number divided by the divisor.</li>
<li><strong>Divisor column</strong>: the smallest divisor (excluding 1) of the coresponding remainder.</li>
<li><strong>Copy remainder menu item</strong>: copies the selected reminder into clipboard.</li>
<li><strong>Copy divisor menu item</strong>: copies the selected divisor into clipboard.</li>
<li><strong>Copy remainder menu item</strong>: empties the <em>Factorization</em> area.</li>
<li><strong>Status message</strong>: displays the current operation taking place.</li>
<li><strong>Cancel button</strong>: this button appears when a long calculation is taking place, so that the user may cancel if the operation is taking too long.</li>
</ol>
</div>
<div class="section">
<a name="keys"> </a>
<h2>Keyboard shortcuts</h2>
<table>
<tr>
<th>Key combination</th> <th id="main">Action </th>
</tr>
<tr>
<td class="key">Enter</td>
<td>Performs calculation.</td>
</tr>
<tr>
<td class="key">F1</td>
<td>Starts help.</td>
</tr>
<tr>
<td class="key">Ctrl + C</td>
<td>Copies selected remainder into clipboard.</td>
</tr>
<tr>
<td class="key">Ctrl + Shift + C</td>
<td>Copies selected divisor into clipboard.</td>
</tr>
</table>
</div>
<div class="section">
<a name="limits"> </a>
<h2>Limitations</h2>
<p>The calculator is limited to 128bit floating point numbers (approximate range: <20>1.0 <20> 10<sup>-28</sup> to <20>7.9 <20> 10<sup>28</sup>, or 28-29 digits). However, since factorization can only be done for integer numbers, the numbers that are not integer will be trimmed.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,116 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Factorizator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
td.key {
font-family: Consolas, monospace;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 65%;
padding-left: 10px;
}
td {
font-size: 11pt;
padding-left: 10px;
}
li {
margin-bottom: 4px;
}
</style>
</head>
<body>
<h1>Factorizator</h1>
<div class="section">
<h2>Factorizator topics</h2>
<ul>
<li><a href="#start">
Getting started</a></li>
<li><a href="#ui">
The user interface</a></li>
<li><a href="#keys">
Keyboard shortcuts</a></li>
<li><a href="#limits">
Limitations</a></li>
</ul>
</div>
<div class="section">
<a name="start"> </a>
<h2>Getting started</h2>
<p>The <strong>Factorizator</strong> is an application which displays the <em>factorization</em> of natural numbers. <em>Factorization</em> is defined as the decomposition of the number into prime factors, which multiplied will yield the original number.</p>
<p>Using the application is very simple, one has to simply type a number in the input text box, and press <em>Calculate</em> (or Enter key). The result is displayed in the <em>Factorization</em> area. The first column shows the original numbers divided by the last divisor, and in the divisor column, the divisors are listed.</p>
</div>
<div class="section">
<a name="ui"> </a>
<h2>The user interface</h2>
<img src="img/interface.png"/>
<ol>
<li><strong>Input number</strong>: this is where a number is written.</li>
<li><strong>Calculate button</strong>: press this button (or the Enter key) to begin calculation.</li>
<li><strong>Remainder column</strong>: the result of the previous number divided by the divisor.</li>
<li><strong>Divisor column</strong>: the smallest divisor (excluding 1) of the corresponding remainder.</li>
<li><strong>Copy remainder menu item</strong>: copies the selected reminder into clipboard.</li>
<li><strong>Copy divisor menu item</strong>: copies the selected divisor into clipboard.</li>
<li><strong>Copy remainder menu item</strong>: empties the <em>Factorization</em> area.</li>
<li><strong>Status message</strong>: displays the current operation taking place.</li>
<li><strong>Cancel button</strong>: this button appears when a long calculation is taking place, so that the user may cancel if the operation is taking too long.</li>
</ol>
</div>
<div class="section">
<a name="keys"> </a>
<h2>Keyboard shortcuts</h2>
<table>
<tr>
<th>Key combination</th> <th id="main">Action </th>
</tr>
<tr>
<td class="key">Enter</td>
<td>Performs calculation.</td>
</tr>
<tr>
<td class="key">F1</td>
<td>Starts help.</td>
</tr>
<tr>
<td class="key">Ctrl + C</td>
<td>Copies selected remainder into clipboard.</td>
</tr>
<tr>
<td class="key">Ctrl + Shift + C</td>
<td>Copies selected divisor into clipboard.</td>
</tr>
</table>
</div>
<div class="section">
<a name="limits"> </a>
<h2>Limitations</h2>
<p>The calculator is limited to 128bit floating point numbers (approximate range: <20>1.0 <20> 10<sup>-28</sup> to <20>7.9 <20> 10<sup>28</sup>, or 28-29 digits). However, since factorization can only be done for integer numbers, the numbers that are not integer will be trimmed.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,119 @@
body {
font-family: Verdana, sans-serif;
font-size: 10.5pt;
background: #F0F0F0;
margin:0px;
padding: 5px;
/*filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#A0A0A0');
background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#A0A0A0));
background: -moz-linear-gradient(top, #F0F0F0, #A0A0A0);*/
background-image: url("img/background.png");
background-repeat: repeat-x;
background-position: top center;
background-attachment: fixed;
}
.section {
margin: 5px;
margin-top: 10px;
padding: 5px;
padding-left: 15px;
min-width: 600px;
border: 1px solid silver;
background-color: #F5F5F5;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-mox-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-webkig-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
}
.footer {
margin-top: 20px;
color: #777;
text-align: center;
font-size: 10pt;
}
a {
text-decoration: none;
color: #248AC9;
}
a:hover {
color: #8DCFF7;
}
a > img {
border: 0px;
}
h1 {
margin:5px;
margin-bottom: 15px;
font-size: 18pt;
font-family: Arial, sans-serif;
font-weight: normal;
color: #606060;
}
h1:hover {
color: #909090;
}
h2 {
margin-top: -2px;
margin-left: -7px;
margin-bottom: 15px;
font-family: Arial, sans-serif;
font-size: 13pt;
font-weight: bold;
color: Silver;
}
h3 {
margin-top: 10px;
margin-bottom: -10px;
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #555;
}
img.shadow {
background: white;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
}
img.maths {
margin-left: 2em;
margin-bottom: 5px;
}
.captioned_image_right {
float:right;
margin-left: 10px;
margin-bottom: 10px;
text-align: center;
background: white;
padding:5px;
width:150px;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

View File

@ -0,0 +1,69 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: Evaluating expressions</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator: Evaluating expressions</h1>
<div class="section" style="background-color: #FFFFE8; font-size:10pt; padding-bottom:1px;">
<h2>Note</h2>
<p>This article describes how to use the expression evaluator window. If you would like to learn how type an expression, you should go to <a href="language.htm">this article</a> instead.</p>
</div>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#start">Getting started</a></li>
<li><a href="#vars">Variables</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Expression evaluator</strong> is a tool within the <strong>Graphing Calculator</strong> which can compute the result of a typed mathematical expression.</p>
</div>
<div class="section">
<a name="start"></a>
<h2>Getting started</h2>
<p>To evaluate an expression, follow the following steps:</p>
<strong>Step 1:</strong> In the application window, click the <em>Evaluate</em> button. <br />
<strong>Step 2:</strong> Type an expression in the <em>Input expression</em> field. <br />
<strong>Step 3:</strong> Add variables to the variable list if needed.<br />
<strong>Step 4:</strong> Click <em>Evaluate</em>. <br />
<p>Example: </p>
<img src="img/eval0.png" style="margin-top: -10px;" />
</div>
<div class="section">
<a name="vars"></a>
<h2>Variables</h2>
<p>A description of what variables are, and why they are useful can be found in the <a href="language.htm#vars">language article</a>.</p>
<p>To use variables in the evaluator window, you need to type the name in the <em>Name</em> field, the value in the <em>Value</em> field, and click <em>Add</em>. If a variable with the same name already exists, you will be prompted if you want to replace the old value.</p>
<p>The value of a variable can also be an expression, it doesn't have to be a simple number.</p>
<img src="img/eval1.png" style="margin-top: -10px;" />
<p>To remove a variable from the list, or edit it, simply right click, and a menu will appear.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,40 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: Exporting and importing expressions</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator: Exporting and importing expressions</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#exp">Exporting</a></li>
<li><a href="#imp">Importing</a></li>
</ul>
</div>
<div class="section">
<a name="exp"></a>
<h2>Exporting</h2>
<p>You can export an expression list from the <em>File</em> menu by clicking <em>Save plotted expressions</em> (or Ctrl+S). Expressions are saved in an XML file which can be imported later.</p>
</div>
<div class="section">
<a name="imp"></a>
<h2>Importing</h2>
<p>To import already saved expressions, select the <em>Import</em> item from the <em>File</em> menu.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,75 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#limits">Limitations</a></li>
<li><a href="#articles">Graphing Calculator articles</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Graphing Calculator</strong> is a tool that can evaluate, plot and integrate expressions (or functions). It includes many useful features, like combining multiple graphs, navigation and zoom controls, and saving plotted expressions.</p>
</div>
<div class="section">
<a name="limits"></a>
<h2>Limitations</h2>
<p>All numeric values are limited to 64bit floating point numbers (approximate range: <20>5.0 <20> 10<sup>-324</sup> to <20>1.7 <20> 10<sup>308</sup>, or 15-16 digits).</p>
<p>Another limitation is the precision of the graph: if the expression has many vertical asymptotes, it may not be plotted correctly.</p>
</div>
<div class="section">
<a name="articles"></a>
<h2>Graphing Calculator articles</h2>
<h3>Abstract</h3>
<ul>
<li><a href="language.htm">
The expression language</a></li>
<li><a href="troubleshooting.htm">
Troubleshooting</a></li>
</ul>
<h3>Expressions</h3>
<ul>
<li><a href="plot.htm">
Plotting expressions</a></li>
<li><a href="evaluate.htm">
Evaluating expressions</a></li>
<li><a href="integrate.htm">
Integrating expressions</a></li>
</ul>
<h3>Other</h3>
<ul>
<li><a href="export-import.htm">
Exporting and importing expressions</a></li>
<li><a href="preferences.htm">
Preferences</a></li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,46 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#calc">Calculating</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Integral calculator</strong> is a tool within the <strong>Graphing Calculator</strong> that can calculate the definite integral of an expression.</p>
<p>The warning that appears is there because the feature is experimental, and wasn't throughly tested.</p>
</div>
<div class="section">
<a name="calc"></a>
<h2>Calculating</h2>
<p>To calculate a definite integral, follow the steps:</p>
<strong>Step 1:</strong> Click the <em>Integrate</em> button. <br />
<strong>Step 2:</strong> Type an expression in the <em>Expression</em> field. <br />
<strong>Step 3:</strong> Type an interval in the <em>Interval</em> fields. <br />
<strong>Step 4:</strong> Press <em>Calculate</em> to perform the calculation. <br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,46 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#calc">Calculating</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Integral calculator</strong> is a tool within the <strong>Graphing Calculator</strong> that can calculate the definite integral of an expression.</p>
<p>The warning that appears is there because the feature is experimental, and wasn't thoroughly tested.</p>
</div>
<div class="section">
<a name="calc"></a>
<h2>Calculating</h2>
<p>To calculate a definite integral, follow the steps:</p>
<strong>Step 1:</strong> Click the <em>Integrate</em> button. <br />
<strong>Step 2:</strong> Type an expression in the <em>Expression</em> field. <br />
<strong>Step 3:</strong> Type an interval in the <em>Interval</em> fields. <br />
<strong>Step 4:</strong> Press <em>Calculate</em> to perform the calculation. <br />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,209 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: The expression language</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
h3 {
margin-top:18px;
margin-bottom: 5px;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 100%;
padding-left: 10px;
}
td {
font-size: 10pt;
padding-left: 10px;
}
</style>
</head>
<body>
<h1>Graphing Calculator: The expression language</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#vars">Variables</a></li>
<li><a href="#pvars">Predefined variables</a></li>
<li><a href="#ops">Accepted operators</a></li>
<li><a href="#func">Functions</a></li>
<li><a href="#pfunc">Predefined functions</a></li>
<li><a href="#syntax">Syntax rules</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Graphing Calculator</strong> evaluates expressions based on a strict set of rules, which form a language. Since the mathematical language is way too complex, and is impossible to write in simple text, this application (and many others) uses a simplified language.</p>
<p>If you are familiar with programming in a C-like language (C, C++, C#, Java), the language used here is very similar to these programming languages.</p>
</div>
<div class="section">
<a name="vars"></a>
<h2>Variables</h2>
<p>A variable is a symbol which may assume any given value. In this application, this symbol is represented by a character string which follows the following rules:</p>
<ul>
<li>It always begins with a letter.</li>
<li>It can only contain letters and numbers, so it cannot contain spaces, underscores and other symbols.</li>
<li>Variables are case sensitive. This means that <span style="font-family:Consolas, mono;">alpha</span> is not the same thing as <span style="font-family:Consolas, mono;">Alpha</span>.
</ul>
<p>The advantages of using variables are that you can skip having to type an ugly expression multiple times, and you can reevaluate the expression with a different input easily.</p>
<p>Variables are supported in the <em>Graphing Calculator</em>, with the limitation that they can only be used in the expression evaluator. Using variables in the plotting of graphs, and integrator is not possible. By default, the only used variable is <em>x</em> when plotting and integrating expressions.</p>
</div>
<div class="section">
<a name="pvars"></a>
<h2>Predefined variables</h2>
<p>The evaluator has two predefined variables:</p>
<ul>
<li><strong>pi</strong> (&pi;)</li>
<li><strong>e</strong></li>
</ul>
</div>
<div class="section">
<a name="ops"></a>
<h2>Accepted operators</h2>
<p>The following operators are accepted:</p>
<ul>
<li><strong>+</strong> (addition)</li>
<li><strong>-</strong> (subtraction)</li>
<li><strong>*</strong> (multiplication)</li>
<li><strong>/</strong> (division)</li>
<li><strong>%</strong> (division remainder)</li>
<li><strong>^</strong> (power)</li>
</ul>
<p>The order of operations is also respected. A higher order means a higher priority. Operations with the same order are evaluated left to right, with the exception of the power operator.</p>
<ul>
<li><strong>Order 1:</strong> + -</li>
<li><strong>Order 2:</strong> * / %</li>
<li><strong>Order 3:</strong> ^</li>
</ul>
</div>
<div class="section">
<a name="func"></a>
<h2>Functions</h2>
<p>The <em>Graphing Calculator</em> supports only predefined functions at the moment.</p>
</div>
<div class="section">
<a name="pfunc"></a>
<h2>Predefined functions</h2>
<p>The following functions can be used:</p>
<h3>Roots</h3>
<table>
<tr><td><strong>sqrt(x)</strong></td><td>Square root</td>
<tr><td><strong>cbrt(x)</strong></td><td>Cube root</td>
<tr><td><strong>root(n, x)</strong></td><td>Nth root</td>
</table>
<h3>Logarithms</h3>
<table>
<tr><td><strong>lg(x)</strong></td><td>Decimal logarithm</td>
<tr><td><strong>ln(x)</strong></td><td>Natural logarithm</td>
<tr><td><strong>log(b, x)</strong></td><td>Logarithm of x with base b</td>
</table>
<h3>Trigonometric functions:</h3>
<table>
<tr><td><strong>sin(x)</strong></td><td>Sine</td>
<tr><td><strong>sinh(x)</strong></td><td>Hiperbolic sine</td>
<tr><td><strong>cos(x)</strong></td><td>Cosine</td>
<tr><td><strong>cosh(x)</strong></td><td>Hiperbolic cosine</td>
<tr><td><strong>tan(x)</strong></td><td>Tangent</td>
<tr><td><strong>tanh(x)</strong></td><td>Hiperbolic tangent</td>
<tr><td><strong>ctan(x)</strong></td><td>Cotangent</td>
<tr><td><strong>sin(x)</strong></td><td>Sine</td>
<tr><td><strong>sin(x)</strong></td><td>Sine</td>
</table>
<h3>Inverse trigonometric functions: </h3>
<table>
<tr><td><strong>arcsin(x)</strong> or <strong>asin(x)</strong></td><td>Inverse sine</td>
<tr><td><strong>arccos(x)</strong> or <strong>acos(x)</strong></td><td>Inverse cosine</td>
<tr><td><strong>arctan(x)</strong> or <strong>atan(x)</strong></td><td>Inverse tangent</td>
</table>
<h3>Other functions:</h3>
<table>
<tr><td><strong>ceil(x)</strong> or <strong>ceiling(x)</strong></td><td>Ceiling, or the smallest integer number, greater than x.</td>
<tr><td><strong>floor(x)</strong></td><td>Floor, or the greatest integer number, smaller than x.</td>
<tr><td><strong>int(x)</strong></td><td>Integer part of the number.</td>
<tr><td><strong>truncate(x)</strong></td><td>Truncates (removes) the fractional part from the number.</td>
<tr><td><strong>round(x, n)</strong></td><td>Rounds the number to n decimals.</td>
<tr><td>&nbsp;</td></tr>
<tr><td><strong>abs(x)</strong></td><td>Absolute</td>
<tr><td><strong>max(x, y)</strong></td><td>Maximum</td>
<tr><td><strong>min(x, y)</strong></td><td>Minimum</td>
</table>
</div>
<div class="section">
<a name="syntax"></a>
<h2>Syntax rules</h2>
<p>The syntax of this application is more strict than the mathematic language. These are some of the rules:</p>
<h3>Numbers: </h3>
<ul>
<li>Numbers in scientific format are not accepted.</li>
<li>Digit grouping is not accepted.</li>
<li>The integer and fractional parts of the number must be separated by full stop (.) and <strong>not</strong> comma.</li>
</ul>
<h3>Functions:</h3>
<ul>
<li>The parameter(s) of any functions <strong>must</strong> be enclosed in parantheses. Expressions like <span style="font-family:Consolas, mono;">sin x</span> will fail to evaluate.</li>
<li>For functions with multiple parameters, the parameters are separated by comma.</li>
<li>The names of functions and variables are case sensitive.</li>
</ul>
<h3>Operators: </h3>
<ul>
<li>Operators of same precedence (order) are evaluated from left to right, with the exception of the power (^) operator which is evaluated from right to left. Otherwise, precedence rules (order of operations) is respected.</li>
<li>Expressions like <span style="font-family:Consolas, mono;">3x</span> are not accepted, you must specify the multiplication operator: <span style="font-family:Consolas, mono;">3*x</span></li>
</ul>
<h3>Others: </h3>
<ul>
<li>Writing expressions as functions is currently not supported, so the expression <span style="font-family:Consolas, mono;">f(x)=2*x</span> will fail to evaluate. Writing it as <span style="font-family:Consolas, mono;">y=2*x</span> will not work either.</li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,207 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: The expression language</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
h3 {
margin-top:18px;
margin-bottom: 5px;
}
th {
text-align: left;
font-size: 9pt;
}
th#main {
width: 100%;
padding-left: 10px;
}
td {
font-size: 10pt;
padding-left: 10px;
}
</style>
</head>
<body>
<h1>Graphing Calculator: The expression language</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#vars">Variables</a></li>
<li><a href="#pvars">Predefined variables</a></li>
<li><a href="#ops">Accepted operators</a></li>
<li><a href="#func">Functions</a></li>
<li><a href="#pfunc">Predefined functions</a></li>
<li><a href="#syntax">Syntax rules</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>The <strong>Graphing Calculator</strong> evaluates expressions based on a strict set of rules, which form a language. Since the mathematical language is way too complex, and is impossible to write in simple text, this application (and many others) uses a simplified language.</p>
<p>If you are familiar with programming in a C-like language (C, C++, C#, Java), the language used here is very similar to these programming languages.</p>
</div>
<div class="section">
<a name="vars"></a>
<h2>Variables</h2>
<p>A variable is a symbol which may assume any given value. In this application, this symbol is represented by a character string which follows the following rules:</p>
<ul>
<li>It always begins with a letter.</li>
<li>It can only contain letters and numbers, so it cannot contain spaces, underscores and other symbols.</li>
<li>Variables are case sensitive. This means that <span style="font-family:Consolas, mono;">alpha</span> is not the same thing as <span style="font-family:Consolas, mono;">Alpha</span>.
</ul>
<p>The advantages of using variables are that you can skip having to type an ugly expression multiple times, and you can reevaluate the expression with a different input easily.</p>
<p>Variables are supported in the <em>Graphing Calculator</em>, with the limitation that they can only be used in the expression evaluator. Using variables in the plotting of graphs, and integrator is not possible. By default, the only used variable is <em>x</em> when plotting and integrating expressions.</p>
</div>
<div class="section">
<a name="pvars"></a>
<h2>Predefined variables</h2>
<p>The evaluator has two predefined variables:</p>
<ul>
<li><strong>pi</strong> (&pi;)</li>
<li><strong>e</strong></li>
</ul>
</div>
<div class="section">
<a name="ops"></a>
<h2>Accepted operators</h2>
<p>The following operators are accepted:</p>
<ul>
<li><strong>+</strong> (addition)</li>
<li><strong>-</strong> (subtraction)</li>
<li><strong>*</strong> (multiplication)</li>
<li><strong>/</strong> (division)</li>
<li><strong>%</strong> (division remainder)</li>
<li><strong>^</strong> (power)</li>
</ul>
<p>The order of operations is also respected. A higher order means a higher priority. Operations with the same order are evaluated left to right, with the exception of the power operator.</p>
<ul>
<li><strong>Order 1:</strong> + -</li>
<li><strong>Order 2:</strong> * / %</li>
<li><strong>Order 3:</strong> ^</li>
</ul>
</div>
<div class="section">
<a name="func"></a>
<h2>Functions</h2>
<p>The <em>Graphing Calculator</em> supports only predefined functions at the moment.</p>
</div>
<div class="section">
<a name="pfunc"></a>
<h2>Predefined functions</h2>
<p>The following functions can be used:</p>
<h3>Roots</h3>
<table>
<tr><td><strong>sqrt(x)</strong></td><td>Square root</td>
<tr><td><strong>cbrt(x)</strong></td><td>Cube root</td>
<tr><td><strong>root(n, x)</strong></td><td>Nth root</td>
</table>
<h3>Logarithms</h3>
<table>
<tr><td><strong>lg(x)</strong></td><td>Decimal logarithm</td>
<tr><td><strong>ln(x)</strong></td><td>Natural logarithm</td>
<tr><td><strong>log(b, x)</strong></td><td>Logarithm of x with base b</td>
</table>
<h3>Trigonometric functions:</h3>
<table>
<tr><td><strong>sin(x)</strong></td><td>Sine</td>
<tr><td><strong>sinh(x)</strong></td><td>Hyperbolic sine</td>
<tr><td><strong>cos(x)</strong></td><td>Cosine</td>
<tr><td><strong>cosh(x)</strong></td><td>Hyperbolic cosine</td>
<tr><td><strong>tan(x)</strong></td><td>Tangent</td>
<tr><td><strong>tanh(x)</strong></td><td>Hyperbolic tangent</td>
<tr><td><strong>ctan(x)</strong></td><td>Cotangent</td>
</table>
<h3>Inverse trigonometric functions: </h3>
<table>
<tr><td><strong>arcsin(x)</strong> or <strong>asin(x)</strong></td><td>Inverse sine</td>
<tr><td><strong>arccos(x)</strong> or <strong>acos(x)</strong></td><td>Inverse cosine</td>
<tr><td><strong>arctan(x)</strong> or <strong>atan(x)</strong></td><td>Inverse tangent</td>
</table>
<h3>Other functions:</h3>
<table>
<tr><td><strong>ceil(x)</strong> or <strong>ceiling(x)</strong></td><td>Ceiling, or the smallest integer number, greater than x.</td>
<tr><td><strong>floor(x)</strong></td><td>Floor, or the greatest integer number, smaller than x.</td>
<tr><td><strong>int(x)</strong></td><td>Integer part of the number.</td>
<tr><td><strong>truncate(x)</strong></td><td>Truncates (removes) the fractional part from the number.</td>
<tr><td><strong>round(x, n)</strong></td><td>Rounds the number to n decimals.</td>
<tr><td>&nbsp;</td></tr>
<tr><td><strong>abs(x)</strong></td><td>Absolute</td>
<tr><td><strong>max(x, y)</strong></td><td>Maximum</td>
<tr><td><strong>min(x, y)</strong></td><td>Minimum</td>
</table>
</div>
<div class="section">
<a name="syntax"></a>
<h2>Syntax rules</h2>
<p>The syntax of this application is more strict than the mathematic language. These are some of the rules:</p>
<h3>Numbers: </h3>
<ul>
<li>Numbers in scientific format are not accepted.</li>
<li>Digit grouping is not accepted.</li>
<li>The integer and fractional parts of the number must be separated by full stop (.) and <strong>not</strong> comma.</li>
</ul>
<h3>Functions:</h3>
<ul>
<li>The parameter(s) of any functions <strong>must</strong> be enclosed in parentheses. Expressions like <span style="font-family:Consolas, mono;">sin x</span> will fail to evaluate.</li>
<li>For functions with multiple parameters, the parameters are separated by comma.</li>
<li>The names of functions and variables are case sensitive.</li>
</ul>
<h3>Operators: </h3>
<ul>
<li>Operators of same precedence (order) are evaluated from left to right, with the exception of the power (^) operator which is evaluated from right to left. Otherwise, precedence rules (order of operations) is respected.</li>
<li>Expressions like <span style="font-family:Consolas, mono;">3x</span> are not accepted, you must specify the multiplication operator: <span style="font-family:Consolas, mono;">3*x</span></li>
</ul>
<h3>Others: </h3>
<ul>
<li>Writing expressions as functions is currently not supported, so the expression <span style="font-family:Consolas, mono;">f(x)=2*x</span> will fail to evaluate. Writing it as <span style="font-family:Consolas, mono;">y=2*x</span> will not work either.</li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,60 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#plot">Plotting an expression</a></li>
<li><a href="#multi">Multiple expressions</a></li>
<li><a href="#nav">Navigation</a></li>
</ul>
</div>
<div class="section">
<a name="plot"></a>
<h2>Plotting an expression</h2>
<p>To plot an expression, simply type it in the <em>Input</em> field, and press the <em>Plot</em> button. The color of the expression is generated randomly.</p>
<img src="img/plot0.png" style="margin-top: -10px;" />
</div>
<div class="section">
<a name="multi"></a>
<h2>Multiple expressions</h2>
<p>Once you plot an expression, it will appear in the <em>Plotted expressions</em> list.</p>
<img src="img/plot1.png" style="margin-top: -10px;" />
<p>From here, you can hide and unhide expressions, delete them from the list, and empty the list using the <em>Clear</em> button.</p>
</div>
<div class="section">
<a name="nav"></a>
<h2>Navigation</h2>
<p>You can navigate using the navigation buttons from the top right corner, or the arrow keys on the keyboard. The center button resets the canvas to the original position.</p>
<img src="img/plot2.png" style="margin-top: -10px;" />
<p>In the bottom right corner, you can see the zoom controls. You can also zoom using the mouse wheel, or the + and - keys.</p>
<img src="img/plot3.png" style="margin-top: -10px;" />
<p>For a better control of the region you want to be drawn, you can type values (or expressions) in the <em>Range</em> area.</p>
<img src="img/plot4.png" style="margin-top: -10px;" />
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,68 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: Preferences</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator: Preferences</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#prec">Graph precision</a></li>
<li><a href="#number-prec">Grid numbers precision</a></li>
<li><a href="#density">Grid density</a></li>
<li><a href="#sens">Navigation and zoom sensitivity</a></li>
</ul>
</div>
<div class="section">
<a name="intro"></a>
<h2>Introduction</h2>
<p>From <em>Preferences</em> you can configure the way graphs are drawn. To access <em>Preferences</em>, open it from the <em>Application</em> menu.</p>
</div>
<div class="section">
<a name="prec"></a>
<h2>Graph precision</h2>
<p>The slider allows you to adjust the precision of the graph. When the precision is lower, drawing is much faster, however it may look bad. When the precision is high, drawing can get very slow, but the graph will look much more accurate.</p>
<img src="img/pref0.png" />
</div>
<div class="section">
<a name="number-prec"></a>
<h2>Grid numbers precision</h2>
<p>The slider allows you to adjust how many decimals are shown in the graph. If the value is too high, they may overlap each other.</p>
<img src="img/pref1.png" />
</div>
<div class="section">
<a name="density"></a>
<h2>Grid density</h2>
<p>The slider allows you to adjust how many grid lines are drawn.</p>
<img src="img/pref2.png" />
</div>
<div class="section">
<a name="sens"></a>
<h2>Navigation and zoom sensitivity</h2>
<p>Adjusting these sliders, you can make the graph move and zoom slower or faster.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,119 @@
body {
font-family: Verdana, sans-serif;
font-size: 10.5pt;
background: #F0F0F0;
margin:0px;
padding: 5px;
/*filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#A0A0A0');
background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#A0A0A0));
background: -moz-linear-gradient(top, #F0F0F0, #A0A0A0);*/
background-image: url("img/background.png");
background-repeat: repeat-x;
background-position: top center;
background-attachment: fixed;
}
.section {
margin: 5px;
margin-top: 10px;
padding: 5px;
padding-left: 15px;
min-width: 600px;
border: 1px solid silver;
background-color: #FAFAFA;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-mox-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-webkig-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
}
.footer {
margin-top: 20px;
color: #777;
text-align: center;
font-size: 10pt;
}
a {
text-decoration: none;
color: #248AC9;
}
a:hover {
color: #8DCFF7;
}
a > img {
border: 0px;
}
h1 {
margin:5px;
margin-bottom: 15px;
font-size: 18pt;
font-family: Arial, sans-serif;
font-weight: normal;
color: #606060;
}
h1:hover {
color: #909090;
}
h2 {
margin-top: -2px;
margin-left: -7px;
margin-bottom: 15px;
font-family: Arial, sans-serif;
font-size: 13pt;
font-weight: bold;
color: Silver;
}
h3 {
margin-top: 10px;
margin-bottom: -10px;
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #555;
}
img.shadow {
background: white;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
}
img.maths {
margin-left: 2em;
margin-bottom: 5px;
}
.captioned_image_right {
float:right;
margin-left: 10px;
margin-bottom: 10px;
text-align: center;
background: white;
padding:5px;
width:150px;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

View File

@ -0,0 +1,87 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: Troubleshooting</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator: Troubleshooting</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#crash-start">Application crashes at startup</a></li>
<li><a href="#graph-incorrect">Graph is drawn incorrectly</a></li>
<li><a href="#works-slow">Application works slowly</a></li>
<li><a href="#error-undefined-var">I get the <em>Undefined variable</em> error.</a></li>
<li><a href="#error-undefined-func">I get the <em>Undefined function</em> error.</a></li>
<li><a href="#error-stack-empty">I get the <em>Stack empty</em> error.</a></li>
<li><a href="#error-mismatched-parantheses">I get the <em>Mismatched parantheses</em> error.</a></li>
<li><a href="#error-other">I have another problem not covered in the troubleshooting guide.</a></li>
</ul>
</div>
<div class="section">
<a name="crash-start"></a>
<h2>Application crashes at startup</h2>
<p>The application needs .NET Framework 4.0 installed. If you don't have it installed, you should download and install it from the <a href="http://www.microsoft.com/download/en/details.aspx?id=17718">Microsoft website</a>.</p>
</div>
<div class="section">
<a name="graph-incorrect"></a>
<h2>Graph is drawn incorrectly</h2>
<p>Problems with drawing appear when the function has many vertical asymptothes, or the function changes values too often, and is described <a href="index.htm#limits">here</a>. Try increasing the graph precision from preferences.</p>
</div>
<div class="section">
<a name="works-slow"></a>
<h2>Application works slowly</h2>
<p>This is a known issue, and has to do with the way the functions are drawn. The slowdown appears when resizing the window, or navigating through the graph. We are working on this issue. What you can try is to decrease the graph precision from the preferences.</p>
</div>
<div class="section">
<a name="error-undefined-var"></a>
<h2>I get the <em>Undefined variable</em> error.</h2>
<p>You need to verify you haven't accidentally typed a letter where it shouldn't be. You should also check the <a href="language.htm">language article</a>, to learn about the syntax rules of expressions.</p>
</div>
<div class="section">
<a name="error-undefined-func"></a>
<h2>I get the <em>Undefined function</em> error.</h2>
<p>You have a syntax error, you need to check the <a href="language.htm">language article</a>, to learn the correct syntax of expressions.</p>
</div>
<div class="section">
<a name="error-stack-empty"></a>
<h2>I get the <em>Stack empty</em> error.</h2>
<p>This error usually appears when you didn't give the correct number of parameters to a function. Check <a href="language.htm#pfunc">this article</a> to verify the parameters.</p>
</div>
<div class="section">
<a name="error-mismatched-parantheses"></a>
<h2>I get the <em>Stack empty</em> error.</h2>
<p>This error is pretty self explanatory, check your parantheses.</p>
</div>
<div class="section">
<a name="error-other"></a>
<h2>I have another problem not covered in the troubleshooting guide.</h2>
<p>You should contact the developer using the contact form. Please, include a useful description of what you were doing when the problem has occured, and eventually a link to a screenshot. The log file which should be located in the directory <em>logs</em>, where the application executable is, would also be very useful.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact form: <a href="https://docs.google.com/spreadsheet/viewform?formkey=dE9CVFNxM1VGRVVISFlBUTRmSXBpY2c6MQ&ifq">https://docs.google.com/...</a>
</div>
</body>
</html>

View File

@ -0,0 +1,87 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Graphing Calculator: Troubleshooting</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Graphing Calculator: Troubleshooting</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#crash-start">Application crashes at startup</a></li>
<li><a href="#graph-incorrect">Graph is drawn incorrectly</a></li>
<li><a href="#works-slow">Application works slowly</a></li>
<li><a href="#error-undefined-var">I get the <em>Undefined variable</em> error.</a></li>
<li><a href="#error-undefined-func">I get the <em>Undefined function</em> error.</a></li>
<li><a href="#error-stack-empty">I get the <em>Stack empty</em> error.</a></li>
<li><a href="#error-mismatched-parantheses">I get the <em>Mismatched parentheses</em> error.</a></li>
<li><a href="#error-other">I have another problem not covered in the troubleshooting guide.</a></li>
</ul>
</div>
<div class="section">
<a name="crash-start"></a>
<h2>Application crashes at startup</h2>
<p>The application needs .NET Framework 4.0 installed. If you don't have it installed, you should download and install it from the <a href="http://www.microsoft.com/download/en/details.aspx?id=17718">Microsoft website</a>.</p>
</div>
<div class="section">
<a name="graph-incorrect"></a>
<h2>Graph is drawn incorrectly</h2>
<p>Problems with drawing appear when the function has many vertical asymptotes, or the function changes values too often, and is described <a href="index.htm#limits">here</a>. Try increasing the graph precision from preferences.</p>
</div>
<div class="section">
<a name="works-slow"></a>
<h2>Application works slowly</h2>
<p>This is a known issue, and has to do with the way the functions are drawn. The slowdown appears when resizing the window, or navigating through the graph. We are working on this issue. What you can try is to decrease the graph precision from the preferences.</p>
</div>
<div class="section">
<a name="error-undefined-var"></a>
<h2>I get the <em>Undefined variable</em> error.</h2>
<p>You need to verify you haven't accidentally typed a letter where it shouldn't be. You should also check the <a href="language.htm">language article</a>, to learn about the syntax rules of expressions.</p>
</div>
<div class="section">
<a name="error-undefined-func"></a>
<h2>I get the <em>Undefined function</em> error.</h2>
<p>You have a syntax error, you need to check the <a href="language.htm">language article</a>, to learn the correct syntax of expressions.</p>
</div>
<div class="section">
<a name="error-stack-empty"></a>
<h2>I get the <em>Stack empty</em> error.</h2>
<p>This error usually appears when you didn't give the correct number of parameters to a function. Check <a href="language.htm#pfunc">this article</a> to verify the parameters.</p>
</div>
<div class="section">
<a name="error-mismatched-parantheses"></a>
<h2>I get the <em>Mismatched parentheses</em> error.</h2>
<p>This error is pretty self explanatory, check your parentheses.</p>
</div>
<div class="section">
<a name="error-other"></a>
<h2>I have another problem not covered in the troubleshooting guide.</h2>
<p>You should contact the developer using the contact form. Please, include a useful description of what you were doing when the problem has occurred, and eventually a link to a screenshot. The log file which should be located in the directory <em>logs</em>, where the application executable is, would also be very useful.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact form: <a href="https://docs.google.com/spreadsheet/viewform?formkey=dE9CVFNxM1VGRVVISFlBUTRmSXBpY2c6MQ&ifq">https://docs.google.com/...</a>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

View File

@ -0,0 +1,60 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Help viewer</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Help viewer</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#nav">Navigation</a></li>
<li><a href="#search">Search</a></li>
</ul>
</div>
<div class="section">
<a name="intro"> </a>
<h2>Introduction</h2>
<p>The <em>Help viewer</em> is an application which displays information about how to use various features of the application.</p>
</div>
<div class="section">
<a name="nav"> </a>
<h2>Navigation</h2>
<p>You can go back and forward using the navigation buttons in the toolbar:</p>
<img src="img/help-nav.png" style="margin-top: -10px;"/>
<p>You can also see all the articles listed in the left panel of the application. To view an article, simply click on it.</p>
<p>To view the help articles for another application, select it from the <em>Application</em> toolbar:</p>
<img src="img/help-app-toolbar.png" style="margin-top: -10px;"/>
</div>
<div class="section">
<a name="search"> </a>
<h2>Search</h2>
<p>You can also search through articles, using the search toolbar. You have 3 options:</p>
<img src="img/help-search.png" style="margin-top: -10px;"/>
<ul>
<li><strong>Search title</strong>: searches through the titles of the articles only</li>
<li><strong>Search content</strong>: searches trough the content of all the articles for the current application.</li>
<li><strong>Search in current page</strong>: highlights all occurences of the specified text in the currently opened page.</li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,60 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Help viewer</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Help viewer</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#nav">Navigation</a></li>
<li><a href="#search">Search</a></li>
</ul>
</div>
<div class="section">
<a name="intro"> </a>
<h2>Introduction</h2>
<p>The <em>Help viewer</em> is an application which displays information about how to use various features of the application.</p>
</div>
<div class="section">
<a name="nav"> </a>
<h2>Navigation</h2>
<p>You can go back and forward using the navigation buttons in the toolbar:</p>
<img src="img/help-nav.png" style="margin-top: -10px;"/>
<p>You can also see all the articles listed in the left panel of the application. To view an article, simply click on it.</p>
<p>To view the help articles for another application, select it from the <em>Application</em> toolbar:</p>
<img src="img/help-app-toolbar.png" style="margin-top: -10px;"/>
</div>
<div class="section">
<a name="search"> </a>
<h2>Search</h2>
<p>You can also search through articles, using the search toolbar. You have 3 options:</p>
<img src="img/help-search.png" style="margin-top: -10px;"/>
<ul>
<li><strong>Search title</strong>: searches through the titles of the articles only</li>
<li><strong>Search content</strong>: searches trough the content of all the articles for the current application.</li>
<li><strong>Search in current page</strong>: highlights all occurrences of the specified text in the currently opened page.</li>
</ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,119 @@
body {
font-family: Verdana, sans-serif;
font-size: 10.5pt;
background: #F0F0F0;
margin:0px;
padding: 5px;
/*filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#A0A0A0');
background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#A0A0A0));
background: -moz-linear-gradient(top, #F0F0F0, #A0A0A0);*/
background-image: url("img/background.png");
background-repeat: repeat-x;
background-position: top center;
background-attachment: fixed;
}
.section {
margin: 5px;
margin-top: 10px;
padding: 5px;
padding-left: 15px;
min-width: 600px;
border: 1px solid silver;
background-color: #F5F5F5;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-mox-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
-webkig-box-shadow: 0px 3px 7px rgba(68,68,68,0.6);
}
.footer {
margin-top: 20px;
color: #777;
text-align: center;
font-size: 10pt;
}
a {
text-decoration: none;
color: #248AC9;
}
a:hover {
color: #8DCFF7;
}
a > img {
border: 0px;
}
h1 {
margin:5px;
margin-bottom: 15px;
font-size: 18pt;
font-family: Arial, sans-serif;
font-weight: normal;
color: #606060;
}
h1:hover {
color: #909090;
}
h2 {
margin-top: -2px;
margin-left: -7px;
margin-bottom: 15px;
font-family: Arial, sans-serif;
font-size: 13pt;
font-weight: bold;
color: Silver;
}
h3 {
margin-top: 10px;
margin-bottom: -10px;
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #555;
}
img.shadow {
background: white;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
}
img.maths {
margin-left: 2em;
margin-bottom: 5px;
}
.captioned_image_right {
float:right;
margin-left: 10px;
margin-bottom: 10px;
text-align: center;
background: white;
padding:5px;
width:150px;
box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-mox-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
-webkig-box-shadow: 2px 2px 7px rgba(68,68,68,0.4);
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

View File

@ -0,0 +1,87 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Tibi's Mathematics Suite: Hotkeys</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Tibi's Mathematics Suite: Hotkeys</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#setup">Setting up hotkeys</a></li>
<li><a href="#remove">Removing hotkeys</a></li>
<li><a href="#warnings">Warnings</a></li>
</ul>
</div>
<div class="section">
<a name="intro"> </a>
<h2>Introduction</h2>
<p>A <em>hotkey</em> means a combination of keys on the keyboard that triggers a specific action. Usually, hotkeys trigger action as long as the application window is focused.</p>
<p>A <em>global hotkey</em> is a hotkey with a global scope, this means that pressing that key combination will trigger the action, no matter which application is focused.</p>
<p>In the suite application, hotkeys are used to launch applications from the suite. For example, you could set a keyboard combination that opens the Scientific Calculator.</p>
</div>
<div class="section">
<a name="setup"> </a>
<h2>Setting up hotkeys</h2>
<p>To enable a keyboard hotkey:</p>
<p><strong>Step 1: </strong>Go to the suite preferences (by right clicking the notification area icon, and pressing <em>Preferences</em>).</p>
<p><strong>Step 2: </strong>Select an application from the list.</p>
<p><strong>Step 3: </strong>Click in the <em>Shortcut</em> text area, and press a key combination.</p>
<p><strong>Step 4: </strong>Click the <em>Set</em> button to confirm the hotkey.</p>
<p><strong>Step 5: </strong>Click <em>Accept</em> to apply the modified settings.</p>
<img src="img/suite-hotkeys0.png" />
</div>
<div class="section">
<a name="remove"> </a>
<h2>Removing hotkeys</h2>
<p>To remove a keyboard hotkey:</p>
<p><strong>Step 1: </strong>Go to the suite preferences (by right clicking the notification area icon, and pressing <em>Preferences</em>).</p>
<p><strong>Step 2: </strong>Select an application from the list.</p>
<p><strong>Step 3: </strong>Click on the <em>Clear</em> button.</p>
<p><strong>Step 4: </strong>Press <em>Accept</em> to apply the modification.</p>
</div>
<div class="section">
<a name="warnings"> </a>
<h2>Warnings</h2>
<p>It is strongly recommended that you use more <strong>uncommon</strong> key combinations, otherwise there may be conflicts with the keyboard combinations for other applications.</p>
<p>For example, you should never use the combination <span style="font-family: Consolas, mono">Ctrl + S</span>, as many applications use it as the <em>Save</em> command. However, the combination <span style="font-family: Consolas, mono">Ctrl + Alt + Shift + S</span> is a good one.</p>
<p>You should <strong>never</strong> use a single key as global hotkey, other than the media keys. For example, you should never use the key <span style="font-family: Consolas, mono">A</span> as a global hotkey, because whenever you will have to type a word containing the letter 'a', an application will be launched.<p>
<p>Also, Microsoft recommends that the <em>Windows</em> key is only used by operating system functions.</p>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -0,0 +1,57 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Tibi's Mathematics Suite</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Tibi's Mathematics Suite</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#start">Getting started</a></li>
<li><a href="#articles">Suite articles</a></li>
</ul>
</div>
<div class="section">
<a name="intro"> </a>
<h2>Introduction</h2>
<p><em>Tibi's Mathematics Suite</em> is a package of useful mathematical appications. At the moment, it contains the following modules: </p>
<ul>
<li>Factorizator</li>
<li>Graphing calculator</li>
<li>Help viewer</li>
<li>Matrix calculator</li>
<li>Scientific calculator</li>
</ul>
<p>The <em>suite application</em> is an utility that makes it much easier to access the individual applications, using a system tray icon and global hotkeys.</p>
</div>
<div class="section">
<a name="start"> </a>
<h2>Getting started</h2>
<p>At startup, the application appears as an icon in the system tray. When right clicking the icon, you have the option to open an application, change settings, or exit.</p>
<img src="img/suite0.png" />
<br /> <br />
<p>The settings window is where you can enable <a href="hotkeys.htm">global hotkeys</a>, this means pressing a keyboard combination to open a specific application.</p>
</div>
<div class="section">
<a name="articles"> </a>
<h2>Suite articles</h2>
<ul><li><a href="hotkeys.htm">Global hotkeys</a></li></ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

View File

@ -0,0 +1,57 @@
<!-- saved from url=(0014)about:internet -->
<html>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<head>
<title>Tibi's Mathematics Suite</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Tibi's Mathematics Suite</h1>
<div class="section">
<h2>Content</h2>
<ul>
<li><a href="#intro">Introduction</a></li>
<li><a href="#start">Getting started</a></li>
<li><a href="#articles">Suite articles</a></li>
</ul>
</div>
<div class="section">
<a name="intro"> </a>
<h2>Introduction</h2>
<p><em>Tibi's Mathematics Suite</em> is a package of useful mathematical applications. At the moment, it contains the following modules: </p>
<ul>
<li>Factorizator</li>
<li>Graphing calculator</li>
<li>Help viewer</li>
<li>Matrix calculator</li>
<li>Scientific calculator</li>
</ul>
<p>The <em>suite application</em> is an utility that makes it much easier to access the individual applications, using a system tray icon and global hotkeys.</p>
</div>
<div class="section">
<a name="start"> </a>
<h2>Getting started</h2>
<p>At startup, the application appears as an icon in the system tray. When right clicking the icon, you have the option to open an application, change settings, or exit.</p>
<img src="img/suite0.png" />
<br /> <br />
<p>The settings window is where you can enable <a href="hotkeys.htm">global hotkeys</a>, this means pressing a keyboard combination to open a specific application.</p>
</div>
<div class="section">
<a name="articles"> </a>
<h2>Suite articles</h2>
<ul><li><a href="hotkeys.htm">Global hotkeys</a></li></ul>
</div>
<div class="footer">
Software created by Chibici Tiberiu.
Contact: <a href="mailto:chibicitiberiu@gmail.com">chibicitiberiu@gmail.com</a>
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More