From dde1f3e583159fddbcdba6ec52e7e3e432c00711 Mon Sep 17 00:00:00 2001
From: Alexander Lantsev <aunsane@gmail.com>
Date: Sun, 26 Apr 2015 11:03:17 +0000
Subject: Tox: common project

git-svn-id: http://svn.miranda-ng.org/main/trunk@13160 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
---
 protocols/Tox/Tox.vcxproj            |  30 ++++
 protocols/Tox/Tox.vcxproj.filters    |   4 +
 protocols/Tox/Tox_10.vcxproj         | 268 ----------------------------------
 protocols/Tox/Tox_10.vcxproj.filters | 192 -------------------------
 protocols/Tox/Tox_12.vcxproj         | 269 -----------------------------------
 protocols/Tox/Tox_12.vcxproj.filters | 190 -------------------------
 protocols/Tox/src/api_av.cpp         |   2 +-
 protocols/Tox/src/api_avatars.cpp    |   2 +-
 protocols/Tox/src/api_connection.cpp |   2 +-
 protocols/Tox/src/api_dns.cpp        |   2 +-
 protocols/Tox/src/api_encryption.cpp |   2 +-
 protocols/Tox/src/api_groupchats.cpp |   2 +-
 protocols/Tox/src/api_main.cpp       |   2 +-
 protocols/Tox/src/api_transfer.cpp   |   2 +-
 protocols/Tox/src/common.h           | 107 --------------
 protocols/Tox/src/main.cpp           |  69 ---------
 protocols/Tox/src/stdafx.cpp         |  18 ---
 protocols/Tox/src/stdafx.cxx         |  18 +++
 protocols/Tox/src/stdafx.h           | 107 ++++++++++++++
 protocols/Tox/src/tox.cpp            |  69 +++++++++
 protocols/Tox/src/tox_accounts.cpp   |   2 +-
 protocols/Tox/src/tox_avatars.cpp    |   2 +-
 protocols/Tox/src/tox_chatrooms.cpp  |   2 +-
 protocols/Tox/src/tox_contacts.cpp   |   2 +-
 protocols/Tox/src/tox_core.cpp       |   2 +-
 protocols/Tox/src/tox_events.cpp     |   2 +-
 protocols/Tox/src/tox_icons.cpp      |   2 +-
 protocols/Tox/src/tox_menus.cpp      |   2 +-
 protocols/Tox/src/tox_messages.cpp   |   2 +-
 protocols/Tox/src/tox_multimedia.cpp |   2 +-
 protocols/Tox/src/tox_netlib.cpp     |   2 +-
 protocols/Tox/src/tox_network.cpp    |   2 +-
 protocols/Tox/src/tox_options.cpp    |   2 +-
 protocols/Tox/src/tox_profile.cpp    |   2 +-
 protocols/Tox/src/tox_proto.cpp      |   2 +-
 protocols/Tox/src/tox_search.cpp     |   2 +-
 protocols/Tox/src/tox_services.cpp   |   2 +-
 protocols/Tox/src/tox_transfer.cpp   |   2 +-
 protocols/Tox/src/tox_utils.cpp      |   2 +-
 39 files changed, 255 insertions(+), 1140 deletions(-)
 create mode 100644 protocols/Tox/Tox.vcxproj
 create mode 100644 protocols/Tox/Tox.vcxproj.filters
 delete mode 100644 protocols/Tox/Tox_10.vcxproj
 delete mode 100644 protocols/Tox/Tox_10.vcxproj.filters
 delete mode 100644 protocols/Tox/Tox_12.vcxproj
 delete mode 100644 protocols/Tox/Tox_12.vcxproj.filters
 delete mode 100644 protocols/Tox/src/common.h
 delete mode 100644 protocols/Tox/src/main.cpp
 delete mode 100644 protocols/Tox/src/stdafx.cpp
 create mode 100644 protocols/Tox/src/stdafx.cxx
 create mode 100644 protocols/Tox/src/stdafx.h
 create mode 100644 protocols/Tox/src/tox.cpp

(limited to 'protocols/Tox')

diff --git a/protocols/Tox/Tox.vcxproj b/protocols/Tox/Tox.vcxproj
new file mode 100644
index 0000000000..c8d45cedb0
--- /dev/null
+++ b/protocols/Tox/Tox.vcxproj
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{BCFAB658-326E-466D-995B-E76636C1DEA4}</ProjectGuid>
+    <ProjectName>Tox</ProjectName>
+  </PropertyGroup>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="$(ProjectDir)..\..\build\vc.common\common.props" />
+  </ImportGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent Condition="'$(Platform)'=='Win32'">
+      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)\" /y
+copy docs\tox.ini "$(SolutionDir)$(Configuration)\Plugins" /y</Command>
+    </PostBuildEvent>
+    <PostBuildEvent Condition="'$(Platform)'=='x64'">
+      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)64\" /y
+copy docs\tox.ini "$(SolutionDir)$(Configuration)64\Plugins" /y</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <None Include="include\*.h" />
+    <None Include="res\Icons\*.ico" />
+  </ItemGroup>
+</Project>
diff --git a/protocols/Tox/Tox.vcxproj.filters b/protocols/Tox/Tox.vcxproj.filters
new file mode 100644
index 0000000000..d1147f9ca1
--- /dev/null
+++ b/protocols/Tox/Tox.vcxproj.filters
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(ProjectDir)..\..\build\vc.common\common.filters" /> 
+</Project>
diff --git a/protocols/Tox/Tox_10.vcxproj b/protocols/Tox/Tox_10.vcxproj
deleted file mode 100644
index 97d3933212..0000000000
--- a/protocols/Tox/Tox_10.vcxproj
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup Label="ProjectConfigurations">
-    <ProjectConfiguration Include="Debug|Win32">
-      <Configuration>Debug</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug|x64">
-      <Configuration>Debug</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|x64">
-      <Configuration>Release</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-  </ItemGroup>
-  <PropertyGroup Label="Globals">
-    <ProjectGuid>{BCFAB658-326E-466D-995B-E76636C1DEA4}</ProjectGuid>
-    <ProjectName>Tox</ProjectName>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <CharacterSet>Unicode</CharacterSet>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <CharacterSet>Unicode</CharacterSet>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <CharacterSet>Unicode</CharacterSet>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <CharacterSet>Unicode</CharacterSet>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-  <ImportGroup Label="ExtensionSettings">
-  </ImportGroup>
-  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <PropertyGroup Label="UserMacros" />
-  <PropertyGroup>
-    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
-    <IgnoreImportLibrary>true</IgnoreImportLibrary>
-  </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <ClCompile>
-      <WarningLevel>Level3</WarningLevel>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <StringPooling>false</StringPooling>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin10\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\x86\libtox.* "$(SolutionDir)$(Configuration)\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
-    <ClCompile>
-      <WarningLevel>Level3</WarningLevel>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <StringPooling>false</StringPooling>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin10\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\x64\libtox.* "$(SolutionDir)$(Configuration)64\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)64\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <ClCompile>
-      <WarningLevel>Level3</WarningLevel>
-      <Optimization>Full</Optimization>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <OptimizeReferences>true</OptimizeReferences>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin10\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <AdditionalOptions>/PDBALTPATH:%_PDB% %(AdditionalOptions)</AdditionalOptions>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\x86\libtox.* "$(SolutionDir)$(Configuration)\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-    <ClCompile>
-      <WarningLevel>Level3</WarningLevel>
-      <Optimization>Full</Optimization>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <OptimizeReferences>true</OptimizeReferences>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin10\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <AdditionalOptions>/PDBALTPATH:%_PDB% %(AdditionalOptions)</AdditionalOptions>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\x64\libtox.* "$(SolutionDir)$(Configuration)64\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)64\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemGroup>
-    <ClInclude Include="include\tox.h" />
-    <ClInclude Include="include\toxav.h" />
-    <ClInclude Include="include\toxdns.h" />
-    <ClInclude Include="include\toxencryptsave.h" />
-    <ClInclude Include="src\common.h" />
-    <ClInclude Include="src\resource.h" />
-    <ClInclude Include="src\tox_address.h" />
-    <ClInclude Include="src\tox_chatrooms.h" />
-    <ClInclude Include="src\tox_dialogs.h" />
-    <ClInclude Include="src\tox_icons.h" />
-    <ClInclude Include="src\tox_menus.h" />
-    <ClInclude Include="src\tox_multimedia.h" />
-    <ClInclude Include="src\tox_options.h" />
-    <ClInclude Include="src\tox_profile.h" />
-    <ClInclude Include="src\tox_proto.h" />
-    <ClInclude Include="src\tox_transfer.h" />
-    <ClInclude Include="src\version.h" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="src\api_av.cpp" />
-    <ClCompile Include="src\api_avatars.cpp" />
-    <ClCompile Include="src\api_connection.cpp" />
-    <ClCompile Include="src\api_dns.cpp" />
-    <ClCompile Include="src\api_encryption.cpp" />
-    <ClCompile Include="src\api_groupchats.cpp" />
-    <ClCompile Include="src\api_main.cpp" />
-    <ClCompile Include="src\api_transfer.cpp" />
-    <ClCompile Include="src\main.cpp" />
-    <ClCompile Include="src\stdafx.cpp">
-      <PrecompiledHeader>Create</PrecompiledHeader>
-    </ClCompile>
-    <ClCompile Include="src\tox_chatrooms.cpp" />
-    <ClCompile Include="src\tox_core.cpp" />
-    <ClCompile Include="src\tox_accounts.cpp" />
-    <ClCompile Include="src\tox_avatars.cpp" />
-    <ClCompile Include="src\tox_events.cpp" />
-    <ClCompile Include="src\tox_icons.cpp" />
-    <ClCompile Include="src\tox_menus.cpp" />
-    <ClCompile Include="src\tox_messages.cpp" />
-    <ClCompile Include="src\tox_multimedia.cpp" />
-    <ClCompile Include="src\tox_netlib.cpp" />
-    <ClCompile Include="src\tox_network.cpp" />
-    <ClCompile Include="src\tox_options.cpp" />
-    <ClCompile Include="src\tox_profile.cpp" />
-    <ClCompile Include="src\tox_proto.cpp" />
-    <ClCompile Include="src\tox_search.cpp" />
-    <ClCompile Include="src\tox_contacts.cpp" />
-    <ClCompile Include="src\tox_services.cpp" />
-    <ClCompile Include="src\tox_transfer.cpp" />
-    <ClCompile Include="src\tox_utils.cpp" />
-  </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="res\resource.rc" />
-    <ResourceCompile Include="res\version.rc" />
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\icons\tox.ico" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="res\Icons\audio_call.ico" />
-    <None Include="res\Icons\audio_end.ico" />
-    <None Include="res\Icons\audio_ring.ico" />
-    <None Include="res\Icons\audio_start.ico" />
-  </ItemGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-  <ImportGroup Label="ExtensionTargets">
-  </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/protocols/Tox/Tox_10.vcxproj.filters b/protocols/Tox/Tox_10.vcxproj.filters
deleted file mode 100644
index 83a87a031a..0000000000
--- a/protocols/Tox/Tox_10.vcxproj.filters
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{86de5614-9de5-4ffc-bd34-21d9c671e172}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Source Files">
-      <UniqueIdentifier>{ea03e4bb-b8dd-4b5b-b409-2513240d2511}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Resource Files">
-      <UniqueIdentifier>{b818611d-200d-4eb8-be7a-f15b396ae26d}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Source Files\api">
-      <UniqueIdentifier>{87c3094c-c0d1-4179-856d-55d02a4450cc}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Header Files\api">
-      <UniqueIdentifier>{7f072eba-bb61-4824-b479-5898b85add0a}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Resource Files\Icons">
-      <UniqueIdentifier>{5ce796e5-1f0d-4bb7-bdab-9de0e5513528}</UniqueIdentifier>
-    </Filter>
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="src\version.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_proto.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\common.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\resource.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_transfer.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_address.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="include\tox.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxdns.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxencryptsave.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_options.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_chatrooms.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_icons.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_menus.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_dialogs.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxav.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_multimedia.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_profile.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="src\tox_proto.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\main.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_events.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_contacts.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_utils.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_options.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_netlib.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_profile.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_transfer.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_messages.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_search.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_accounts.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\stdafx.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_avatars.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_main.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_connection.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_encryption.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_dns.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_avatars.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_groupchats.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_transfer.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_network.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_core.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_services.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_chatrooms.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_menus.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_icons.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_av.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_multimedia.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="res\resource.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
-    <ResourceCompile Include="res\version.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\icons\tox.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="res\Icons\audio_call.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </None>
-    <None Include="res\Icons\audio_end.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </None>
-    <None Include="res\Icons\audio_ring.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </None>
-    <None Include="res\Icons\audio_start.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </None>
-  </ItemGroup>
-</Project>
\ No newline at end of file
diff --git a/protocols/Tox/Tox_12.vcxproj b/protocols/Tox/Tox_12.vcxproj
deleted file mode 100644
index b2884d8412..0000000000
--- a/protocols/Tox/Tox_12.vcxproj
+++ /dev/null
@@ -1,269 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup Label="ProjectConfigurations">
-    <ProjectConfiguration Include="Debug|Win32">
-      <Configuration>Debug</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug|x64">
-      <Configuration>Debug</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|x64">
-      <Configuration>Release</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-  </ItemGroup>
-  <PropertyGroup Label="Globals">
-    <ProjectGuid>{BCFAB658-326E-466D-995B-E76636C1DEA4}</ProjectGuid>
-    <ProjectName>Tox</ProjectName>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>v120_xp</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>v120_xp</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>v120_xp</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>v120_xp</PlatformToolset>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-  <ImportGroup Label="ExtensionSettings">
-  </ImportGroup>
-  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <PropertyGroup Label="UserMacros" />
-  <PropertyGroup>
-    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
-    <IgnoreImportLibrary>true</IgnoreImportLibrary>
-  </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <ClCompile>
-      <WarningLevel>Level4</WarningLevel>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <StringPooling>false</StringPooling>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
-    <ClCompile>
-      <WarningLevel>Level4</WarningLevel>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <StringPooling>false</StringPooling>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)64\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)64\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <ClCompile>
-      <WarningLevel>Level4</WarningLevel>
-      <Optimization>Full</Optimization>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <OptimizeReferences>true</OptimizeReferences>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-    <ClCompile>
-      <WarningLevel>Level4</WarningLevel>
-      <Optimization>Full</Optimization>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>include;..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>common.h</PrecompiledHeaderFile>
-    </ClCompile>
-    <Link>
-      <SubSystem>Windows</SubSystem>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <OptimizeReferences>true</OptimizeReferences>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <AdditionalDependencies>Winmm.lib;dnsapi.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
-      <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
-    </Link>
-    <ResourceCompile>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
-    </ResourceCompile>
-    <PostBuildEvent>
-      <Command>copy bin\$(PlatformTarget)\libtox.* "$(SolutionDir)$(Configuration)64\" /y
-copy docs\tox.ini "$(SolutionDir)$(Configuration)64\Plugins" /y</Command>
-    </PostBuildEvent>
-  </ItemDefinitionGroup>
-  <ItemGroup>
-    <ClInclude Include="include\tox.h" />
-    <ClInclude Include="include\toxav.h" />
-    <ClInclude Include="include\toxdns.h" />
-    <ClInclude Include="include\toxencryptsave.h" />
-    <ClInclude Include="src\common.h" />
-    <ClInclude Include="src\resource.h" />
-    <ClInclude Include="src\tox_address.h" />
-    <ClInclude Include="src\tox_chatrooms.h" />
-    <ClInclude Include="src\tox_dialogs.h" />
-    <ClInclude Include="src\tox_icons.h" />
-    <ClInclude Include="src\tox_menus.h" />
-    <ClInclude Include="src\tox_multimedia.h" />
-    <ClInclude Include="src\tox_options.h" />
-    <ClInclude Include="src\tox_profile.h" />
-    <ClInclude Include="src\tox_proto.h" />
-    <ClInclude Include="src\tox_transfer.h" />
-    <ClInclude Include="src\version.h" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="src\api_av.cpp" />
-    <ClCompile Include="src\api_avatars.cpp" />
-    <ClCompile Include="src\api_connection.cpp" />
-    <ClCompile Include="src\api_dns.cpp" />
-    <ClCompile Include="src\api_encryption.cpp" />
-    <ClCompile Include="src\api_groupchats.cpp" />
-    <ClCompile Include="src\api_main.cpp" />
-    <ClCompile Include="src\api_transfer.cpp" />
-    <ClCompile Include="src\main.cpp" />
-    <ClCompile Include="src\stdafx.cpp">
-      <PrecompiledHeader>Create</PrecompiledHeader>
-    </ClCompile>
-    <ClCompile Include="src\tox_chatrooms.cpp" />
-    <ClCompile Include="src\tox_core.cpp" />
-    <ClCompile Include="src\tox_accounts.cpp" />
-    <ClCompile Include="src\tox_avatars.cpp" />
-    <ClCompile Include="src\tox_events.cpp" />
-    <ClCompile Include="src\tox_icons.cpp" />
-    <ClCompile Include="src\tox_menus.cpp" />
-    <ClCompile Include="src\tox_messages.cpp" />
-    <ClCompile Include="src\tox_multimedia.cpp" />
-    <ClCompile Include="src\tox_netlib.cpp" />
-    <ClCompile Include="src\tox_network.cpp" />
-    <ClCompile Include="src\tox_options.cpp" />
-    <ClCompile Include="src\tox_profile.cpp" />
-    <ClCompile Include="src\tox_proto.cpp" />
-    <ClCompile Include="src\tox_search.cpp" />
-    <ClCompile Include="src\tox_contacts.cpp" />
-    <ClCompile Include="src\tox_services.cpp" />
-    <ClCompile Include="src\tox_transfer.cpp" />
-    <ClCompile Include="src\tox_utils.cpp" />
-  </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="res\resource.rc" />
-    <ResourceCompile Include="res\version.rc" />
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\icons\audio_call.ico" />
-    <Image Include="res\Icons\audio_end.ico" />
-    <Image Include="res\Icons\audio_ring.ico" />
-    <Image Include="res\Icons\audio_start.ico" />
-    <Image Include="res\icons\tox.ico" />
-  </ItemGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-  <ImportGroup Label="ExtensionTargets">
-  </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/protocols/Tox/Tox_12.vcxproj.filters b/protocols/Tox/Tox_12.vcxproj.filters
deleted file mode 100644
index 7440c2c617..0000000000
--- a/protocols/Tox/Tox_12.vcxproj.filters
+++ /dev/null
@@ -1,190 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{86de5614-9de5-4ffc-bd34-21d9c671e172}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Source Files">
-      <UniqueIdentifier>{ea03e4bb-b8dd-4b5b-b409-2513240d2511}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Resource Files">
-      <UniqueIdentifier>{b818611d-200d-4eb8-be7a-f15b396ae26d}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Source Files\api">
-      <UniqueIdentifier>{87c3094c-c0d1-4179-856d-55d02a4450cc}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Header Files\api">
-      <UniqueIdentifier>{7f072eba-bb61-4824-b479-5898b85add0a}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Resource Files\Icons">
-      <UniqueIdentifier>{5ce796e5-1f0d-4bb7-bdab-9de0e5513528}</UniqueIdentifier>
-    </Filter>
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="src\version.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_proto.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\common.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\resource.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_transfer.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_address.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="include\tox.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxdns.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxencryptsave.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_options.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_chatrooms.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_icons.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_menus.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_dialogs.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="include\toxav.h">
-      <Filter>Header Files\api</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_multimedia.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="src\tox_profile.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="src\tox_proto.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\main.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_events.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_contacts.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_utils.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_options.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_netlib.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_profile.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_transfer.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_messages.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_search.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_accounts.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\stdafx.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_avatars.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_main.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_connection.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_encryption.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_dns.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_avatars.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_groupchats.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_transfer.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_network.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_core.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_services.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_chatrooms.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_menus.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_icons.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="src\api_av.cpp">
-      <Filter>Source Files\api</Filter>
-    </ClCompile>
-    <ClCompile Include="src\tox_multimedia.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="res\resource.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
-    <ResourceCompile Include="res\version.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\icons\tox.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-    <Image Include="res\icons\audio_call.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-    <Image Include="res\Icons\audio_start.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-    <Image Include="res\Icons\audio_end.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-    <Image Include="res\Icons\audio_ring.ico">
-      <Filter>Resource Files\Icons</Filter>
-    </Image>
-  </ItemGroup>
-</Project>
\ No newline at end of file
diff --git a/protocols/Tox/src/api_av.cpp b/protocols/Tox/src/api_av.cpp
index afcf544bbf..5e09dc81bd 100644
--- a/protocols/Tox/src/api_av.cpp
+++ b/protocols/Tox/src/api_av.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* COMMON A/V FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_avatars.cpp b/protocols/Tox/src/api_avatars.cpp
index e15773b94f..658b835a68 100644
--- a/protocols/Tox/src/api_avatars.cpp
+++ b/protocols/Tox/src/api_avatars.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* AVATAR FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_connection.cpp b/protocols/Tox/src/api_connection.cpp
index 7777755fd6..3803411fa3 100644
--- a/protocols/Tox/src/api_connection.cpp
+++ b/protocols/Tox/src/api_connection.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* CONNECTION FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_dns.cpp b/protocols/Tox/src/api_dns.cpp
index 3b4e601d9a..57db01e57c 100644
--- a/protocols/Tox/src/api_dns.cpp
+++ b/protocols/Tox/src/api_dns.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* DNS TOXID RESOILVING FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_encryption.cpp b/protocols/Tox/src/api_encryption.cpp
index f5fd2634e3..b57e342e99 100644
--- a/protocols/Tox/src/api_encryption.cpp
+++ b/protocols/Tox/src/api_encryption.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* ENCRYPTION FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_groupchats.cpp b/protocols/Tox/src/api_groupchats.cpp
index eb8b01603d..9919eee92c 100644
--- a/protocols/Tox/src/api_groupchats.cpp
+++ b/protocols/Tox/src/api_groupchats.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* GROUP CHAT FUNCTIONS: WARNING Group chats will be rewritten so this might change */
 
diff --git a/protocols/Tox/src/api_main.cpp b/protocols/Tox/src/api_main.cpp
index 19bb82f586..1e04f74ef0 100644
--- a/protocols/Tox/src/api_main.cpp
+++ b/protocols/Tox/src/api_main.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* MAIN FUNCTIONS */
 
diff --git a/protocols/Tox/src/api_transfer.cpp b/protocols/Tox/src/api_transfer.cpp
index f3aceab334..8906436084 100644
--- a/protocols/Tox/src/api_transfer.cpp
+++ b/protocols/Tox/src/api_transfer.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* FILE SENDING FUNCTIONS */
 
diff --git a/protocols/Tox/src/common.h b/protocols/Tox/src/common.h
deleted file mode 100644
index be70a8bf6b..0000000000
--- a/protocols/Tox/src/common.h
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef _COMMON_H_
-#define _COMMON_H_
-
-#include <windows.h>
-#include <windns.h>
-#include <time.h>
-#include <commctrl.h>
-
-#include <mmreg.h>
-
-#include <string>
-#include <vector>
-#include <regex>
-#include <queue>
-#include <map>
-
-#include <newpluginapi.h>
-
-#include <m_protoint.h>
-#include <m_protomod.h>
-#include <m_protosvc.h>
-
-#include <m_database.h>
-#include <m_langpack.h>
-#include <m_options.h>
-#include <m_netlib.h>
-#include <m_popup.h>
-#include <m_icolib.h>
-#include <m_userinfo.h>
-#include <m_addcontact.h>
-#include <m_message.h>
-#include <m_avatars.h>
-#include <m_skin.h>
-#include <m_chat.h>
-#include <m_genmenu.h>
-#include <m_clc.h>
-#include <m_clist.h>
-#include <m_clistint.h>
-#include <m_gui.h>
-
-#include <m_folders.h>
-
-#include <tox.h>
-#include <toxav.h>
-#include <toxdns.h>
-#include <toxencryptsave.h>
-
-struct CToxProto;
-
-#include "version.h"
-#include "resource.h"
-#include "tox_icons.h"
-#include "tox_menus.h"
-#include "tox_address.h"
-#include "tox_dialogs.h"
-#include "tox_profile.h"
-#include "tox_options.h"
-#include "tox_transfer.h"
-#include "tox_multimedia.h"
-#include "tox_chatrooms.h"
-#include "tox_proto.h"
-
-extern HINSTANCE g_hInstance;
-
-#define MODULE "Tox"
-
-#define TOX_ERROR -1
-
-#define TOX_MAX_CONNECT_RETRIES 300
-#define TOX_MAX_DISCONNECT_RETRIES 300
-
-#define TOX_MAX_CALLS 1
-
-#define TOX_INI_PATH "%miranda_path%\\Plugins\\tox.ini"
-
-#define TOX_SETTINGS_ID "ToxID"
-#define TOX_SETTINGS_DNS "DnsID"
-#define TOX_SETTINGS_CHAT_ID "ChatID"
-#define TOX_SETTINGS_GROUP "DefaultGroup"
-#define TOX_SETTINGS_AVATAR_HASH "AvatarHash"
-
-#define TOX_SETTINGS_NODE_PREFIX "Node_"
-#define TOX_SETTINGS_NODE_IPV4 TOX_SETTINGS_NODE_PREFIX"%d_IPv4"
-#define TOX_SETTINGS_NODE_IPV6 TOX_SETTINGS_NODE_PREFIX"%d_IPv6"
-#define TOX_SETTINGS_NODE_PORT TOX_SETTINGS_NODE_PREFIX"%d_Port"
-#define TOX_SETTINGS_NODE_PKEY TOX_SETTINGS_NODE_PREFIX"%d_PubKey"
-#define TOX_SETTINGS_NODE_COUNT TOX_SETTINGS_NODE_PREFIX"Count"
-
-enum TOX_DB_EVENT
-{
-	DB_EVENT_ACTION = 10001,
-	DB_EVENT_CALL = 20001
-};
-
-#define PSR_AUDIO "/RecvAudio"
-
-#define TOX_MAX_AVATAR_SIZE 1024 * 1024
-
-extern HMODULE g_hToxLibrary;
-
-template<typename T>
-T CreateFunction(LPCSTR functionName)
-{
-	return reinterpret_cast<T>(GetProcAddress(g_hToxLibrary, functionName));
-}
-
-#endif //_COMMON_H_
\ No newline at end of file
diff --git a/protocols/Tox/src/main.cpp b/protocols/Tox/src/main.cpp
deleted file mode 100644
index 4d7cd0ab50..0000000000
--- a/protocols/Tox/src/main.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-#include "common.h"
-
-int hLangpack;
-CLIST_INTERFACE* pcli;
-HINSTANCE g_hInstance;
-HMODULE g_hToxLibrary = NULL;
-
-PLUGININFOEX pluginInfo =
-{
-	sizeof(PLUGININFOEX),
-	__PLUGIN_NAME,
-	PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
-	__DESCRIPTION,
-	__AUTHOR,
-	__AUTHOREMAIL,
-	__COPYRIGHT,
-	__AUTHORWEB,
-	UNICODE_AWARE,
-	// {00272A3E-F5FA-4090-8B67-3E62AC1EE0B4}
-	{0x272a3e, 0xf5fa, 0x4090, {0x8b, 0x67, 0x3e, 0x62, 0xac, 0x1e, 0xe0, 0xb4}}
-};
-
-DWORD WINAPI DllMain(HINSTANCE hInstance, DWORD, LPVOID)
-{
-	g_hInstance = hInstance;
-
-	return TRUE;
-}
-
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
-{
-	return &pluginInfo;
-}
-
-extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOCOL, MIID_LAST };
-
-extern "C" int __declspec(dllexport) Load(void)
-{
-	g_hToxLibrary = LoadLibrary(_T("libtox.dll"));
-	if (g_hToxLibrary == NULL)
-		return 0;
-
-	mir_getCLI();
-	mir_getLP(&pluginInfo);
-
-	PROTOCOLDESCRIPTOR pd = { sizeof(pd) };
-	pd.szName = "TOX";
-	pd.type = PROTOTYPE_PROTOCOL;
-	pd.fnInit = (pfnInitProto)CToxProto::InitAccount;
-	pd.fnUninit = (pfnUninitProto)CToxProto::UninitAccount;
-	CallService(MS_PROTO_REGISTERMODULE, 0, (LPARAM)&pd);
-
-	HookEvent(ME_SYSTEM_MODULESLOADED, &CToxProto::OnModulesLoaded);
-
-	return 0;
-}
-
-extern "C" int __declspec(dllexport) Unload(void)
-{
-	CToxProto::UninitIcons();
-	CToxProto::UninitMenus();
-
-	if (g_hToxLibrary)
-	{
-		FreeLibrary(g_hToxLibrary);
-	}
-
-	return 0;
-}
\ No newline at end of file
diff --git a/protocols/Tox/src/stdafx.cpp b/protocols/Tox/src/stdafx.cpp
deleted file mode 100644
index c5fe5abaad..0000000000
--- a/protocols/Tox/src/stdafx.cpp
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
-Copyright (C) 2012-15 Miranda NG project (http://miranda-ng.org)
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation version 2
-of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "common.h"
\ No newline at end of file
diff --git a/protocols/Tox/src/stdafx.cxx b/protocols/Tox/src/stdafx.cxx
new file mode 100644
index 0000000000..6fb37564b7
--- /dev/null
+++ b/protocols/Tox/src/stdafx.cxx
@@ -0,0 +1,18 @@
+/*
+Copyright (C) 2012-15 Miranda NG project (http://miranda-ng.org)
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation version 2
+of the License.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "stdafx.h"
\ No newline at end of file
diff --git a/protocols/Tox/src/stdafx.h b/protocols/Tox/src/stdafx.h
new file mode 100644
index 0000000000..be70a8bf6b
--- /dev/null
+++ b/protocols/Tox/src/stdafx.h
@@ -0,0 +1,107 @@
+#ifndef _COMMON_H_
+#define _COMMON_H_
+
+#include <windows.h>
+#include <windns.h>
+#include <time.h>
+#include <commctrl.h>
+
+#include <mmreg.h>
+
+#include <string>
+#include <vector>
+#include <regex>
+#include <queue>
+#include <map>
+
+#include <newpluginapi.h>
+
+#include <m_protoint.h>
+#include <m_protomod.h>
+#include <m_protosvc.h>
+
+#include <m_database.h>
+#include <m_langpack.h>
+#include <m_options.h>
+#include <m_netlib.h>
+#include <m_popup.h>
+#include <m_icolib.h>
+#include <m_userinfo.h>
+#include <m_addcontact.h>
+#include <m_message.h>
+#include <m_avatars.h>
+#include <m_skin.h>
+#include <m_chat.h>
+#include <m_genmenu.h>
+#include <m_clc.h>
+#include <m_clist.h>
+#include <m_clistint.h>
+#include <m_gui.h>
+
+#include <m_folders.h>
+
+#include <tox.h>
+#include <toxav.h>
+#include <toxdns.h>
+#include <toxencryptsave.h>
+
+struct CToxProto;
+
+#include "version.h"
+#include "resource.h"
+#include "tox_icons.h"
+#include "tox_menus.h"
+#include "tox_address.h"
+#include "tox_dialogs.h"
+#include "tox_profile.h"
+#include "tox_options.h"
+#include "tox_transfer.h"
+#include "tox_multimedia.h"
+#include "tox_chatrooms.h"
+#include "tox_proto.h"
+
+extern HINSTANCE g_hInstance;
+
+#define MODULE "Tox"
+
+#define TOX_ERROR -1
+
+#define TOX_MAX_CONNECT_RETRIES 300
+#define TOX_MAX_DISCONNECT_RETRIES 300
+
+#define TOX_MAX_CALLS 1
+
+#define TOX_INI_PATH "%miranda_path%\\Plugins\\tox.ini"
+
+#define TOX_SETTINGS_ID "ToxID"
+#define TOX_SETTINGS_DNS "DnsID"
+#define TOX_SETTINGS_CHAT_ID "ChatID"
+#define TOX_SETTINGS_GROUP "DefaultGroup"
+#define TOX_SETTINGS_AVATAR_HASH "AvatarHash"
+
+#define TOX_SETTINGS_NODE_PREFIX "Node_"
+#define TOX_SETTINGS_NODE_IPV4 TOX_SETTINGS_NODE_PREFIX"%d_IPv4"
+#define TOX_SETTINGS_NODE_IPV6 TOX_SETTINGS_NODE_PREFIX"%d_IPv6"
+#define TOX_SETTINGS_NODE_PORT TOX_SETTINGS_NODE_PREFIX"%d_Port"
+#define TOX_SETTINGS_NODE_PKEY TOX_SETTINGS_NODE_PREFIX"%d_PubKey"
+#define TOX_SETTINGS_NODE_COUNT TOX_SETTINGS_NODE_PREFIX"Count"
+
+enum TOX_DB_EVENT
+{
+	DB_EVENT_ACTION = 10001,
+	DB_EVENT_CALL = 20001
+};
+
+#define PSR_AUDIO "/RecvAudio"
+
+#define TOX_MAX_AVATAR_SIZE 1024 * 1024
+
+extern HMODULE g_hToxLibrary;
+
+template<typename T>
+T CreateFunction(LPCSTR functionName)
+{
+	return reinterpret_cast<T>(GetProcAddress(g_hToxLibrary, functionName));
+}
+
+#endif //_COMMON_H_
\ No newline at end of file
diff --git a/protocols/Tox/src/tox.cpp b/protocols/Tox/src/tox.cpp
new file mode 100644
index 0000000000..613c790e24
--- /dev/null
+++ b/protocols/Tox/src/tox.cpp
@@ -0,0 +1,69 @@
+#include "stdafx.h"
+
+int hLangpack;
+CLIST_INTERFACE* pcli;
+HINSTANCE g_hInstance;
+HMODULE g_hToxLibrary = NULL;
+
+PLUGININFOEX pluginInfo =
+{
+	sizeof(PLUGININFOEX),
+	__PLUGIN_NAME,
+	PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
+	__DESCRIPTION,
+	__AUTHOR,
+	__AUTHOREMAIL,
+	__COPYRIGHT,
+	__AUTHORWEB,
+	UNICODE_AWARE,
+	// {00272A3E-F5FA-4090-8B67-3E62AC1EE0B4}
+	{0x272a3e, 0xf5fa, 0x4090, {0x8b, 0x67, 0x3e, 0x62, 0xac, 0x1e, 0xe0, 0xb4}}
+};
+
+DWORD WINAPI DllMain(HINSTANCE hInstance, DWORD, LPVOID)
+{
+	g_hInstance = hInstance;
+
+	return TRUE;
+}
+
+extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
+{
+	return &pluginInfo;
+}
+
+extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOCOL, MIID_LAST };
+
+extern "C" int __declspec(dllexport) Load(void)
+{
+	g_hToxLibrary = LoadLibrary(_T("libtox.dll"));
+	if (g_hToxLibrary == NULL)
+		return 0;
+
+	mir_getCLI();
+	mir_getLP(&pluginInfo);
+
+	PROTOCOLDESCRIPTOR pd = { sizeof(pd) };
+	pd.szName = "TOX";
+	pd.type = PROTOTYPE_PROTOCOL;
+	pd.fnInit = (pfnInitProto)CToxProto::InitAccount;
+	pd.fnUninit = (pfnUninitProto)CToxProto::UninitAccount;
+	CallService(MS_PROTO_REGISTERMODULE, 0, (LPARAM)&pd);
+
+	HookEvent(ME_SYSTEM_MODULESLOADED, &CToxProto::OnModulesLoaded);
+
+	return 0;
+}
+
+extern "C" int __declspec(dllexport) Unload(void)
+{
+	CToxProto::UninitIcons();
+	CToxProto::UninitMenus();
+
+	if (g_hToxLibrary)
+	{
+		FreeLibrary(g_hToxLibrary);
+	}
+
+	return 0;
+}
\ No newline at end of file
diff --git a/protocols/Tox/src/tox_accounts.cpp b/protocols/Tox/src/tox_accounts.cpp
index 2e77486c37..29645bc6bf 100644
--- a/protocols/Tox/src/tox_accounts.cpp
+++ b/protocols/Tox/src/tox_accounts.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 LIST<CToxProto> CToxProto::Accounts(1, CToxProto::CompareAccounts);
 
diff --git a/protocols/Tox/src/tox_avatars.cpp b/protocols/Tox/src/tox_avatars.cpp
index eb5bc71abb..643e447853 100644
--- a/protocols/Tox/src/tox_avatars.cpp
+++ b/protocols/Tox/src/tox_avatars.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 std::tstring CToxProto::GetAvatarFilePath(MCONTACT hContact)
 {
diff --git a/protocols/Tox/src/tox_chatrooms.cpp b/protocols/Tox/src/tox_chatrooms.cpp
index deb0ad7f48..62af4e6816 100644
--- a/protocols/Tox/src/tox_chatrooms.cpp
+++ b/protocols/Tox/src/tox_chatrooms.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 MCONTACT CToxProto::GetChatRoom(int groupNumber)
 {
diff --git a/protocols/Tox/src/tox_contacts.cpp b/protocols/Tox/src/tox_contacts.cpp
index 838a9fde7e..8f6484f39e 100644
--- a/protocols/Tox/src/tox_contacts.cpp
+++ b/protocols/Tox/src/tox_contacts.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 WORD CToxProto::GetContactStatus(MCONTACT hContact)
 {
diff --git a/protocols/Tox/src/tox_core.cpp b/protocols/Tox/src/tox_core.cpp
index 400091cbed..8e5ea7e63d 100644
--- a/protocols/Tox/src/tox_core.cpp
+++ b/protocols/Tox/src/tox_core.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 bool CToxProto::InitToxCore()
 {
diff --git a/protocols/Tox/src/tox_events.cpp b/protocols/Tox/src/tox_events.cpp
index e22ebb1c3c..cb30de873e 100644
--- a/protocols/Tox/src/tox_events.cpp
+++ b/protocols/Tox/src/tox_events.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 int CToxProto::OnModulesLoaded(WPARAM, LPARAM)
 {
diff --git a/protocols/Tox/src/tox_icons.cpp b/protocols/Tox/src/tox_icons.cpp
index e01c39ff97..eecb2e2bd6 100644
--- a/protocols/Tox/src/tox_icons.cpp
+++ b/protocols/Tox/src/tox_icons.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 IconInfo CToxProto::Icons[] =
 {
diff --git a/protocols/Tox/src/tox_menus.cpp b/protocols/Tox/src/tox_menus.cpp
index aec9a4b1eb..247ba54378 100644
--- a/protocols/Tox/src/tox_menus.cpp
+++ b/protocols/Tox/src/tox_menus.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 HGENMENU CToxProto::ContactMenuItems[CMI_MAX];
 
diff --git a/protocols/Tox/src/tox_messages.cpp b/protocols/Tox/src/tox_messages.cpp
index 3a78ff5b76..d6e77e1ab7 100644
--- a/protocols/Tox/src/tox_messages.cpp
+++ b/protocols/Tox/src/tox_messages.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* MESSAGE RECEIVING */
 
diff --git a/protocols/Tox/src/tox_multimedia.cpp b/protocols/Tox/src/tox_multimedia.cpp
index 597b72263a..3c8dded1b8 100644
--- a/protocols/Tox/src/tox_multimedia.cpp
+++ b/protocols/Tox/src/tox_multimedia.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 CToxCallDlgBase::CToxCallDlgBase(CToxProto *proto, int idDialog, MCONTACT hContact) :
 	CToxDlgBase(proto, idDialog, false), hContact(hContact)
diff --git a/protocols/Tox/src/tox_netlib.cpp b/protocols/Tox/src/tox_netlib.cpp
index 7ebddc66b2..697e89ffa4 100644
--- a/protocols/Tox/src/tox_netlib.cpp
+++ b/protocols/Tox/src/tox_netlib.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 void CToxProto::InitNetlib()
 {
diff --git a/protocols/Tox/src/tox_network.cpp b/protocols/Tox/src/tox_network.cpp
index c9d4a2b6c2..ec79f22747 100644
--- a/protocols/Tox/src/tox_network.cpp
+++ b/protocols/Tox/src/tox_network.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 bool CToxProto::IsOnline()
 {
diff --git a/protocols/Tox/src/tox_options.cpp b/protocols/Tox/src/tox_options.cpp
index 6023ea62dd..21e2ddba6a 100644
--- a/protocols/Tox/src/tox_options.cpp
+++ b/protocols/Tox/src/tox_options.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 CToxOptionsMain::CToxOptionsMain(CToxProto *proto, int idDialog)
 	: CToxDlgBase(proto, idDialog, false),
diff --git a/protocols/Tox/src/tox_profile.cpp b/protocols/Tox/src/tox_profile.cpp
index 51361b4b34..1b31e1f9ab 100644
--- a/protocols/Tox/src/tox_profile.cpp
+++ b/protocols/Tox/src/tox_profile.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 HANDLE CToxProto::hProfileFolderPath;
 
diff --git a/protocols/Tox/src/tox_proto.cpp b/protocols/Tox/src/tox_proto.cpp
index 0b3947cd74..ebd75482bd 100644
--- a/protocols/Tox/src/tox_proto.cpp
+++ b/protocols/Tox/src/tox_proto.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 CToxProto::CToxProto(const char* protoName, const TCHAR* userName) :
 	PROTO<CToxProto>(protoName, userName),
diff --git a/protocols/Tox/src/tox_search.cpp b/protocols/Tox/src/tox_search.cpp
index cdfec2218e..0c66c33fea 100644
--- a/protocols/Tox/src/tox_search.cpp
+++ b/protocols/Tox/src/tox_search.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 ToxHexAddress ResolveToxAddressFromDnsRecordV1(const std::string &dnsRecord)
 {
diff --git a/protocols/Tox/src/tox_services.cpp b/protocols/Tox/src/tox_services.cpp
index cf3d3f142f..3b5ba18395 100644
--- a/protocols/Tox/src/tox_services.cpp
+++ b/protocols/Tox/src/tox_services.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 INT_PTR CToxProto::SetMyNickname(WPARAM wParam, LPARAM lParam)
 {
diff --git a/protocols/Tox/src/tox_transfer.cpp b/protocols/Tox/src/tox_transfer.cpp
index 8a2017affb..c54bc28181 100644
--- a/protocols/Tox/src/tox_transfer.cpp
+++ b/protocols/Tox/src/tox_transfer.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 /* FILE RECEIVING */
 
diff --git a/protocols/Tox/src/tox_utils.cpp b/protocols/Tox/src/tox_utils.cpp
index 68736bfd08..988f2a24f3 100644
--- a/protocols/Tox/src/tox_utils.cpp
+++ b/protocols/Tox/src/tox_utils.cpp
@@ -1,4 +1,4 @@
-#include "common.h"
+#include "stdafx.h"
 
 TOX_USER_STATUS CToxProto::MirandaToToxStatus(int status)
 {
-- 
cgit v1.2.3