IDR_MAINFRAME BITMAP "res\\Toolbar.bmp"\r
\r
IDR_MARGIN_ICONS BITMAP "res\\mg_icons.bmp"\r
+IDR_MARGIN_ICONS_PNG IMAGE "res\\mg_icons.png"\r
\r
\r
/////////////////////////////////////////////////////////////////////////////\r
IDS_EOL_CR "CR"\r
IDS_EOL_CRLF "CRLF"\r
IDS_EOL_NONE "None"\r
+ IDS_MARKER_COLOR_FMT "Marker Color %d"\r
END\r
\r
#endif // English (United States) resources\r
<ProjectGuid>{C347D6AE-7A2B-4ED0-97AD-2595E1C5D7DD}</ProjectGuid>\r
<RootNamespace>SampleStatic</RootNamespace>\r
<Keyword>MFCProj</Keyword>\r
- <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>\r
+ <WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>\r
</PropertyGroup>\r
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Release|Win32'" Label="Configuration">\r
</PropertyGroup>\r
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Release|x64'" Label="Configuration">\r
<ConfigurationType>Application</ConfigurationType>\r
- <PlatformToolset>v141_xp</PlatformToolset>\r
+ <PlatformToolset>v141</PlatformToolset>\r
<UseOfMfc>Dynamic</UseOfMfc>\r
<CharacterSet>Unicode</CharacterSet>\r
</PropertyGroup>\r
</PropertyGroup>\r
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Debug|x64'" Label="Configuration">\r
<ConfigurationType>Application</ConfigurationType>\r
- <PlatformToolset>v141_xp</PlatformToolset>\r
+ <PlatformToolset>v141</PlatformToolset>\r
<UseOfMfc>Dynamic</UseOfMfc>\r
<CharacterSet>Unicode</CharacterSet>\r
</PropertyGroup>\r
</PropertyGroup>\r
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
<ConfigurationType>Application</ConfigurationType>\r
- <PlatformToolset>v141_xp</PlatformToolset>\r
+ <PlatformToolset>v141</PlatformToolset>\r
<UseOfMfc>Dynamic</UseOfMfc>\r
<CharacterSet>MultiByte</CharacterSet>\r
</PropertyGroup>\r
</PropertyGroup>\r
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
<ConfigurationType>Application</ConfigurationType>\r
- <PlatformToolset>v141_xp</PlatformToolset>\r
+ <PlatformToolset>v141</PlatformToolset>\r
<UseOfMfc>Dynamic</UseOfMfc>\r
<CharacterSet>MultiByte</CharacterSet>\r
</PropertyGroup>\r
<ClCompile Include="..\editlib\basic.cpp" />\r
<ClCompile Include="..\editlib\batch.cpp" />\r
<ClCompile Include="..\editlib\ccrystaleditview.cpp" />\r
- <ClCompile Include="..\editlib\ccrystalrendererdirectdraw.cpp" />\r
+ <ClCompile Include="..\editlib\ccrystalrendererdirectwrite.cpp">\r
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>\r
+ </ClCompile>\r
<ClCompile Include="..\editlib\ccrystalrenderergdi.cpp" />\r
<ClCompile Include="..\editlib\ccrystaltextbuffer.cpp" />\r
<ClCompile Include="..\editlib\ccrystaltextmarkers.cpp" />\r
<ClCompile Include="..\editlib\icu.cpp">\r
<Filter>editlib</Filter>\r
</ClCompile>\r
- <ClCompile Include="..\editlib\ccrystalrendererdirectdraw.cpp">\r
- <Filter>editlib</Filter>\r
- </ClCompile>\r
<ClCompile Include="..\editlib\ccrystalrenderergdi.cpp">\r
<Filter>editlib</Filter>\r
</ClCompile>\r
+ <ClCompile Include="..\editlib\ccrystalrendererdirectwrite.cpp">\r
+ <Filter>Source Files</Filter>\r
+ </ClCompile>\r
</ItemGroup>\r
<ItemGroup>\r
<ResourceCompile Include="Sample.rc">\r
<ProjectGuid>{C347D6AE-7A2B-4ED0-97AD-2595E1C5D7DD}</ProjectGuid>
<RootNamespace>SampleStatic</RootNamespace>
<Keyword>MFCProj</Keyword>
- <WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Unicode Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141_xp</PlatformToolset>
+ <PlatformToolset>v142</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<ClCompile Include="..\editlib\basic.cpp" />
<ClCompile Include="..\editlib\batch.cpp" />
<ClCompile Include="..\editlib\ccrystaleditview.cpp" />
- <ClCompile Include="..\editlib\ccrystalrendererdirectdraw.cpp" />
+ <ClCompile Include="..\editlib\ccrystalrendererdirectwrite.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
<ClCompile Include="..\editlib\ccrystalrenderergdi.cpp" />
<ClCompile Include="..\editlib\ccrystaltextbuffer.cpp" />
<ClCompile Include="..\editlib\ccrystaltextmarkers.cpp" />
<ItemGroup>
<ClInclude Include="..\editlib\ccrystaleditview.h" />
<ClInclude Include="..\editlib\ccrystalrenderer.h" />
- <ClInclude Include="..\editlib\ccrystalrendererdirectdraw.h" />
+ <ClInclude Include="..\editlib\ccrystalrendererdirectwrite.h" />
<ClInclude Include="..\editlib\ccrystalrenderergdi.h" />
<ClInclude Include="..\editlib\ccrystaltextbuffer.h" />
<ClInclude Include="..\editlib\ccrystaltextmarkers.h" />
<ClCompile Include="..\editlib\icu.cpp">
<Filter>editlib</Filter>
</ClCompile>
- <ClCompile Include="..\editlib\ccrystalrendererdirectdraw.cpp">
+ <ClCompile Include="..\editlib\ccrystalrenderergdi.cpp">
<Filter>editlib</Filter>
</ClCompile>
- <ClCompile Include="..\editlib\ccrystalrenderergdi.cpp">
+ <ClCompile Include="..\editlib\ccrystalrendererdirectwrite.cpp">
<Filter>editlib</Filter>
</ClCompile>
</ItemGroup>
<ClInclude Include="..\editlib\ccrystalrenderer.h">
<Filter>editlib</Filter>
</ClInclude>
- <ClInclude Include="..\editlib\ccrystalrendererdirectdraw.h">
+ <ClInclude Include="..\editlib\ccrystalrenderergdi.h">
<Filter>editlib</Filter>
</ClInclude>
- <ClInclude Include="..\editlib\ccrystalrenderergdi.h">
+ <ClInclude Include="..\editlib\ccrystalrendererdirectwrite.h">
<Filter>editlib</Filter>
</ClInclude>
</ItemGroup>
#define IDB_BITMAP1 130\r
#define IDR_MARGIN_ICONS 131\r
#define IDR_MARGIN_CURSOR 132\r
+#define IDR_MARGIN_ICONS_PNG 133\r
#define IDD_MESSAGE_BOX 219\r
#define IDD_EDIT_FIND 220\r
#define IDD_EDIT_REPLACE 221\r
#define IDS_EOL_CR 30406\r
#define IDS_EOL_CRLF 30407\r
#define IDS_EOL_NONE 30408\r
+#define IDS_MARKER_COLOR_FMT 30409\r
#define ID_EDIT_DISABLEBSATSOL 32796\r
#define ID_EDIT_DISABLEDRAGANDDROP 32797\r
#define ID_EDIT_FIND_PREVIOUS 32799\r
#include "StdAfx.h"
#include "ccrystalrenderergdi.h"
+#include "resource.h"
CImageList* CCrystalRendererGDI::s_pIcons = nullptr;
*/
#include "ccrystalrenderer.h"
#include <memory>
+#include <array>
#pragma once
, m_lfSavedBaseFont{}
, m_pParser(nullptr)
, m_pPrintFont(nullptr)
+#ifdef _UNICODE
, m_bChWidthsCalculated{}
, m_iChDoubleWidthFlags{}
+#endif
, m_bPreparingToDrag(false)
, m_bDraggingText(false)
, m_bDragSelection(false)
ptrdiff_t
get_coding (LPCTSTR name, type_codes *codes, int *coding)
{
+ size_t pos;
for (int i = 0; i < codes_count; i++)
- if (size_t pos; (pos = str_pos (name, codes[i].name)) >= 0)
+ if ((pos = str_pos (name, codes[i].name)) >= 0)
{
*coding = i;
return pos;
#pragma once\r
\r
#include <cstdint>\r
+#include <memory>\r
#include "string_util.h"\r
\r
#ifndef ICU_EXTERN\r