Skip to content

Commit

Permalink
Removed VS2010 workarounds & emulations
Browse files Browse the repository at this point in the history
  • Loading branch information
alabuzhev committed Mar 19, 2016
1 parent baa4a30 commit 90fad05
Show file tree
Hide file tree
Showing 143 changed files with 785 additions and 1,815 deletions.
8 changes: 4 additions & 4 deletions far/FarDlgBuilder.cpp
Expand Up @@ -419,7 +419,7 @@ DialogItemEx *DialogBuilder::AddListControl(FARDIALOGITEMTYPES Type, int& Value,
const auto ListItems = Items? new FarListItem[ItemCount] : nullptr;
if (Items)
{
std::transform(Items, Items + ItemCount, ListItems, [&Value](const DialogBuilderListItem& Item) -> FarListItem
std::transform(Items, Items + ItemCount, ListItems, [&Value](const auto& Item)
{
FarListItem NewItem = {};
NewItem.Text = MSG(static_cast<LNGID>(Item.MessageId));
Expand Down Expand Up @@ -451,7 +451,7 @@ DialogItemEx *DialogBuilder::AddListControl(FARDIALOGITEMTYPES Type, IntOption&
const auto ListItems = Items? new FarListItem[ItemCount] : nullptr;
if (Items)
{
std::transform(Items, Items + ItemCount, ListItems, [&Value](const DialogBuilderListItem& Item) -> FarListItem
std::transform(Items, Items + ItemCount, ListItems, [&Value](const auto& Item)
{
FarListItem NewItem = {};
NewItem.Text = MSG(static_cast<LNGID>(Item.MessageId));
Expand Down Expand Up @@ -481,7 +481,7 @@ DialogItemEx *DialogBuilder::AddListControl(FARDIALOGITEMTYPES Type, int& Value,
m_NextY += Height;

const auto ListItems = new FarListItem[Items.size()];
std::transform(ALL_CONST_RANGE(Items), ListItems, [&Value](const DialogBuilderListItem2& Item) -> FarListItem
std::transform(ALL_CONST_RANGE(Items), ListItems, [&Value](const auto& Item)
{
FarListItem NewItem = {};
NewItem.Text = Item.Text.data();
Expand Down Expand Up @@ -510,7 +510,7 @@ DialogItemEx *DialogBuilder::AddListControl(FARDIALOGITEMTYPES Type, IntOption&
m_NextY += Height;

const auto ListItems = new FarListItem[Items.size()];
std::transform(ALL_CONST_RANGE(Items), ListItems, [&Value](const DialogBuilderListItem2& Item) -> FarListItem
std::transform(ALL_CONST_RANGE(Items), ListItems, [&Value](const auto& Item)
{
FarListItem NewItem = {};
NewItem.Text = Item.Text.data();
Expand Down
43 changes: 21 additions & 22 deletions far/PluginA.cpp
Expand Up @@ -171,7 +171,7 @@ static unsigned char IsUpperOrLower[256];

static bool LocalUpperInit()
{
const auto Init = []() -> bool
const auto Init = []
{
for (size_t I=0; I<ARRAYSIZE(LowerToUpper); I++)
{
Expand Down Expand Up @@ -411,7 +411,7 @@ static DWORD KeyToOldKey(DWORD dKey)
template<class F1, class F2, class M>
static void FirstFlagsToSecond(const F1& FirstFlags, F2& SecondFlags, M& Map)
{
FOR(const auto& i, Map)
for (const auto& i: Map)
{
if (FirstFlags & i.first)
{
Expand All @@ -423,7 +423,7 @@ static void FirstFlagsToSecond(const F1& FirstFlags, F2& SecondFlags, M& Map)
template<class F1, class F2, class M>
static void SecondFlagsToFirst(const F2& SecondFlags, F1& FirstFlags, M& Map)
{
FOR(const auto& i, Map)
for (const auto& i: Map)
{
if (SecondFlags & i.second)
{
Expand All @@ -438,10 +438,9 @@ static void ConvertInfoPanelLinesA(const oldfar::InfoPanelLine *iplA, InfoPanelL
{
std::unique_ptr<InfoPanelLine[]> iplW(new InfoPanelLine[iCount]());

std::transform(iplA, iplA + iCount, iplW.get(), [](const oldfar::InfoPanelLine& Item) -> InfoPanelLine
std::transform(iplA, iplA + iCount, iplW.get(), [](const auto& Item)
{
InfoPanelLine NewItem = { AnsiToUnicode(Item.Text), AnsiToUnicode(Item.Data), Item.Separator? IPLFLAGS_SEPARATOR : 0 };
return NewItem;
return InfoPanelLine{ AnsiToUnicode(Item.Text), AnsiToUnicode(Item.Data), Item.Separator? IPLFLAGS_SEPARATOR : 0 };
});

*piplW = iplW.release();
Expand Down Expand Up @@ -507,7 +506,7 @@ static void ConvertKeyBarTitlesA(const oldfar::KeyBarTitles *kbtA, KeyBarTitles
{
if (kbtA && kbtW)
{
static const simple_pair<decltype(&oldfar::KeyBarTitles::Titles), int> LabelsMap[] =
static const std::pair<decltype(&oldfar::KeyBarTitles::Titles), int> LabelsMap[] =
{
{ &oldfar::KeyBarTitles::Titles, 0 },
{ &oldfar::KeyBarTitles::CtrlTitles, LEFT_CTRL_PRESSED },
Expand All @@ -526,7 +525,7 @@ static void ConvertKeyBarTitlesA(const oldfar::KeyBarTitles *kbtA, KeyBarTitles

for (size_t i = 0; i != 12; ++i)
{
const auto CheckLabel = [&](CONST_REFERENCE(LabelsMap) Item) { return (kbtA->*Item.first)[i] != nullptr; };
const auto CheckLabel = [&](const auto& Item) { return (kbtA->*Item.first)[i] != nullptr; };

kbtW->CountLabels += std::count_if(ALL_CONST_RANGE(LabelsMap), CheckLabel);

Expand All @@ -542,7 +541,7 @@ static void ConvertKeyBarTitlesA(const oldfar::KeyBarTitles *kbtA, KeyBarTitles

for (size_t i = 0, j = 0; i != 12; ++i)
{
const auto ProcessLabel = [&](CONST_REFERENCE(LabelsMap) Item)
const auto ProcessLabel = [&](const auto& Item)
{
if ((kbtA->*Item.first)[i])
{
Expand Down Expand Up @@ -851,7 +850,7 @@ static FAR_CHAR_INFO* AnsiVBufToUnicode(const oldfar::FarDialogItem &diA)
return VBuf;
}

static const simple_pair<oldfar::LISTITEMFLAGS, LISTITEMFLAGS> ListFlagsMap[] =
static const std::pair<oldfar::LISTITEMFLAGS, LISTITEMFLAGS> ListFlagsMap[] =
{
OLDFAR_TO_FAR_MAP(LIF_SELECTED),
OLDFAR_TO_FAR_MAP(LIF_CHECKED),
Expand Down Expand Up @@ -882,7 +881,7 @@ static void AnsiListItemToUnicode(const oldfar::FarListItem* liA, FarListItem* l
}
}

static const simple_pair<oldfar::FarDialogItemFlags, FARDIALOGFLAGS> DialogItemFlagsMap[] =
static const std::pair<oldfar::FarDialogItemFlags, FARDIALOGFLAGS> DialogItemFlagsMap[] =
{
OLDFAR_TO_FAR_MAP(DIF_BOXCOLOR),
OLDFAR_TO_FAR_MAP(DIF_GROUP),
Expand Down Expand Up @@ -1275,7 +1274,7 @@ static void ConvertUnicodePanelInfoToAnsi(const PanelInfo* PIW, oldfar::PanelInf

PIA->Flags = 0;

static const simple_pair<oldfar::PANELINFOFLAGS, PANELINFOFLAGS> FlagsMap[] =
static const std::pair<oldfar::PANELINFOFLAGS, PANELINFOFLAGS> FlagsMap[] =
{
OLDFAR_TO_FAR_MAP(PFLAGS_SHOWHIDDEN),
OLDFAR_TO_FAR_MAP(PFLAGS_HIGHLIGHT),
Expand Down Expand Up @@ -1357,7 +1356,7 @@ static int GetEditorCodePageFavA()
DWORD FavIndex = 2;
const auto strCP = std::to_wstring(CodePage);
const auto CpEnum = Codepages().GetFavoritesEnumerator();
std::any_of(CONST_RANGE(CpEnum, i) -> bool
std::any_of(CONST_RANGE(CpEnum, i)
{
if (i.second & CPST_FAVORITE)
{
Expand Down Expand Up @@ -1402,7 +1401,7 @@ static uintptr_t ConvertCharTableToCodePage(int Command)
{
int FavIndex = 2;
const auto CpEnum = Codepages().GetFavoritesEnumerator();
std::any_of(CONST_RANGE(CpEnum, i) -> bool
std::any_of(CONST_RANGE(CpEnum, i)
{
if (i.second & CPST_FAVORITE)
{
Expand Down Expand Up @@ -2337,7 +2336,7 @@ static int WINAPI FarInputBoxA(const char *Title, const char *Prompt, const char
{
try
{
static const simple_pair<oldfar::INPUTBOXFLAGS, INPUTBOXFLAGS> FlagsMap[] =
static const std::pair<oldfar::INPUTBOXFLAGS, INPUTBOXFLAGS> FlagsMap[] =
{
OLDFAR_TO_FAR_MAP(FIB_ENABLEEMPTY),
OLDFAR_TO_FAR_MAP(FIB_PASSWORD),
Expand Down Expand Up @@ -2392,7 +2391,7 @@ static int WINAPI FarMessageFnA(intptr_t PluginNumber, DWORD Flags, const char *
std::transform(Items, Items + ItemsNumber, std::back_inserter(AnsiItems), [](const char* Item){ return std::unique_ptr<wchar_t[]>(AnsiToUnicode(Item)); });
}

static const simple_pair<oldfar::FARMESSAGEFLAGS, FARMESSAGEFLAGS> FlagsMap[] =
static const std::pair<oldfar::FARMESSAGEFLAGS, FARMESSAGEFLAGS> FlagsMap[] =
{
OLDFAR_TO_FAR_MAP(FMSG_WARNING),
OLDFAR_TO_FAR_MAP(FMSG_ERRORTYPE),
Expand Down Expand Up @@ -2464,7 +2463,7 @@ static int WINAPI FarMenuFnA(intptr_t PluginNumber, int X, int Y, int MaxHeight,
{
try
{
static const simple_pair<oldfar::FARMENUFLAGS, FARMENUFLAGS> FlagsMap[] =
static const std::pair<oldfar::FARMENUFLAGS, FARMENUFLAGS> FlagsMap[] =
{
OLDFAR_TO_FAR_MAP(FMENU_SHOWAMPERSAND),
OLDFAR_TO_FAR_MAP(FMENU_WRAPMODE),
Expand All @@ -2484,7 +2483,7 @@ static int WINAPI FarMenuFnA(intptr_t PluginNumber, int X, int Y, int MaxHeight,
{
const auto p = reinterpret_cast<const oldfar::FarMenuItemEx*>(Item);

static const simple_pair<oldfar::MENUITEMFLAGS, MENUITEMFLAGS> ItemFlagsMap[] =
static const std::pair<oldfar::MENUITEMFLAGS, MENUITEMFLAGS> ItemFlagsMap[] =
{
OLDFAR_TO_FAR_MAP(MIF_SELECTED),
OLDFAR_TO_FAR_MAP(MIF_CHECKED),
Expand Down Expand Up @@ -2551,7 +2550,7 @@ static int WINAPI FarMenuFnA(intptr_t PluginNumber, int X, int Y, int MaxHeight,
if (BreakKeysCount)
{
NewBreakKeys.resize(BreakKeysCount);
std::transform(BreakKeys, BreakKeys + BreakKeysCount, NewBreakKeys.begin(), [&](int i)->VALUE_TYPE(NewBreakKeys)
std::transform(BreakKeys, BreakKeys + BreakKeysCount, NewBreakKeys.begin(), [&](int i)
{
VALUE_TYPE(NewBreakKeys) NewItem;
NewItem.VirtualKeyCode = i & 0xffff;
Expand Down Expand Up @@ -4051,7 +4050,7 @@ static intptr_t WINAPI FarAdvControlA(intptr_t ModuleNumber, oldfar::ADVANCED_CO

string strSequence=L"Keys(\"";
string strKeyText;
FOR(const auto& Key, make_range(ksA->Sequence, ksA->Sequence + ksA->Count))
for (const auto& Key: make_range(ksA->Sequence, ksA->Sequence + ksA->Count))
{
if (KeyToText(OldKeyToKey(Key), strKeyText))
{
Expand Down Expand Up @@ -5691,7 +5690,7 @@ void PluginA::ConvertOpenPanelInfo(const oldfar::OpenPanelInfo &Src, OpenPanelIn
OPI.StructSize = sizeof(OPI);
OPI.Flags = OPIF_NONE;

static const simple_pair<oldfar::OPENPANELINFO_FLAGS, OPENPANELINFO_FLAGS> PanelInfoFlagsMap[] =
static const std::pair<oldfar::OPENPANELINFO_FLAGS, OPENPANELINFO_FLAGS> PanelInfoFlagsMap[] =
{
OLDFAR_TO_FAR_MAP(OPIF_ADDDOTS),
OLDFAR_TO_FAR_MAP(OPIF_RAWSELECTION),
Expand Down Expand Up @@ -5849,7 +5848,7 @@ void PluginA::ConvertPluginInfo(const oldfar::PluginInfo &Src, PluginInfo *Dest)
FreePluginInfo();
PI.StructSize = sizeof(PI);

static const simple_pair<oldfar::PLUGIN_FLAGS, PLUGIN_FLAGS> PluginFlagsMap[] =
static const std::pair<oldfar::PLUGIN_FLAGS, PLUGIN_FLAGS> PluginFlagsMap[] =
{
OLDFAR_TO_FAR_MAP(PF_PRELOAD),
OLDFAR_TO_FAR_MAP(PF_DISABLEPANELS),
Expand Down
2 changes: 1 addition & 1 deletion far/RegExp.cpp
Expand Up @@ -1735,7 +1735,7 @@ struct RegExp::StateStackItem

inline const RegExp::StateStackItem& FindStateByPos(const std::vector<RegExp::StateStackItem>& stack, RegExp::REOpCode* pos, int op)
{
return *std::find_if(ALL_CONST_REVERSE_RANGE(stack), [&](CONST_REFERENCE(stack) i){ return i.pos == pos && i.op == op; });
return *std::find_if(ALL_CONST_REVERSE_RANGE(stack), [&](const auto& i){ return i.pos == pos && i.op == op; });
}

inline int RegExp::StrCmp(const wchar_t*& str, const wchar_t* _st, const wchar_t* ed) const
Expand Down
6 changes: 3 additions & 3 deletions far/cddrv.cpp
Expand Up @@ -90,7 +90,7 @@ static CDROM_DeviceCapabilities getCapsUsingProductId(const char* prodID)
const auto Iterator = null_iterator(prodID);
std::copy_if(Iterator, Iterator.end(), std::back_inserter(productID), IsAlpha);

static const simple_pair<const char*, int> Capabilities[] =
static const std::pair<const char*, int> Capabilities[] =
{
{"CD", CAPABILITIES_GENERIC_CDROM},
{"CDRW", CAPABILITIES_GENERIC_CDROM|CAPABILITIES_GENERIC_CDRW},
Expand All @@ -101,7 +101,7 @@ static CDROM_DeviceCapabilities getCapsUsingProductId(const char* prodID)
{"HDDVD", CAPABILITIES_GENERIC_CDROM|CAPABILITIES_GENERIC_DVDROM|CAPABILITIES_GENERIC_HDDVD},
};

return std::accumulate(ALL_CONST_RANGE(Capabilities), CAPABILITIES_NONE, [&productID](int Value, CONST_REFERENCE(Capabilities) i)
return std::accumulate(ALL_CONST_RANGE(Capabilities), CAPABILITIES_NONE, [&productID](auto Value, const auto& i)
{
return static_cast<CDROM_DeviceCapabilities>(Value | (productID.find(i.first) == std::string::npos ? 0 : i.second));
});
Expand Down Expand Up @@ -358,7 +358,7 @@ static CDROM_DeviceCapabilities GetDeviceCapabilities(os::fs::file& Device)

static UINT GetDeviceTypeByCaps(CDROM_DeviceCapabilities caps)
{
static const simple_pair<int, int> DeviceCaps[] =
static const std::pair<int, int> DeviceCaps[] =
{
{DRIVE_BD_RW, CAPABILITIES_GENERIC_BDRW},
{DRIVE_BD_ROM, CAPABILITIES_GENERIC_BDROM},
Expand Down
6 changes: 5 additions & 1 deletion far/changelog
@@ -1,4 +1,8 @@
drkns 19.03.2016 23:19:41 +0200
drkns 20.03.2016 00:41:42 +0200 - build 4584

1. Убираем костыли, щедро расставленные повсеместно для поддержки VS2010 и компании.

drkns 19.03.2016 23:19:41 +0200

1. Given that our German users aren't happy with "#0003145: New German translation", I'm reverting it to the previous version.
Only previously untranslated strings are picked from #0003145 now.
Expand Down
6 changes: 3 additions & 3 deletions far/clipboard.cpp
Expand Up @@ -51,7 +51,7 @@ default_clipboard_mode::mode default_clipboard_mode::get()
}

//-----------------------------------------------------------------------------
ENUM(FAR_CLIPBOARD_FORMAT)
enum FAR_CLIPBOARD_FORMAT: int
{
FCF_VERTICALBLOCK_OEM,
FCF_VERTICALBLOCK_UNICODE,
Expand Down Expand Up @@ -383,14 +383,14 @@ bool Clipboard::GetHDROPAsText(string& data) const
const auto Start = reinterpret_cast<const wchar_t*>(StartA);
if(Files->fWide)
{
FOR(const auto& i, enum_substrings(Start))
for (const auto& i: enum_substrings(Start))
{
data.append(i.data(), i.size()).append(L"\r\n");
}
}
else
{
FOR(const auto& i, (enum_substrings(StartA)))
for (const auto& i: (enum_substrings(StartA)))
{
data.append(wide(std::string(i.data(), i.size()), CP_ACP)).append(L"\r\n");
}
Expand Down
2 changes: 1 addition & 1 deletion far/clipboard.hpp
Expand Up @@ -46,7 +46,7 @@ class default_clipboard_mode
static mode m_Mode;
};

ENUM(FAR_CLIPBOARD_FORMAT);
enum FAR_CLIPBOARD_FORMAT: int;

class Clipboard
{
Expand Down
22 changes: 10 additions & 12 deletions far/cmdline.cpp
Expand Up @@ -570,7 +570,7 @@ static inline bool AssignColor(const string& Color, COLORREF& Target, FARCOLORFL
{
if (!Color.empty())
{
const auto Convert = [](const wchar_t* Ptr, COLORREF& Result) -> bool
const auto Convert = [](const wchar_t* Ptr, COLORREF& Result)
{
wchar_t* EndPtr;
const auto Value = std::wcstoul(Ptr, &EndPtr, 16);
Expand Down Expand Up @@ -627,8 +627,7 @@ std::list<std::pair<string, FarColor>> CommandLine::GetPrompt()
if (Ptr != Format.cbegin())
{
Str.resize(Str.find(L'('));
// TODO: direct emplace_back after decommissioning VC10
Result.emplace_back(VALUE_TYPE(Result)(Str, F));
Result.emplace_back(Str, F);
}
Ptr += Pos+2;
Color.resize(Pos);
Expand All @@ -650,15 +649,15 @@ std::list<std::pair<string, FarColor>> CommandLine::GetPrompt()
}
}
}
// TODO: direct emplace_back after decommissioning VC10
Result.emplace_back(VALUE_TYPE(Result)(Str, F));

Result.emplace_back(Str, F);

std::for_each(RANGE(Result, i)
{
auto& strDestStr = i.first;
const auto strExpandedDestStr = os::env::expand_strings(strDestStr);
strDestStr.clear();
static const simple_pair<wchar_t, wchar_t> ChrFmt[] =
static const std::pair<wchar_t, wchar_t> ChrFmt[] =
{
{L'A', L'&'}, // $A - & (Ampersand)
{L'B', L'|'}, // $B - | (pipe)
Expand Down Expand Up @@ -802,8 +801,7 @@ std::list<std::pair<string, FarColor>> CommandLine::GetPrompt()
else
{
// default prompt = "$p$g"
// TODO: direct emplace_back after decommissioning VC10
Result.emplace_back(VALUE_TYPE(Result)(m_CurDir + L">", PrefixColor));
Result.emplace_back(m_CurDir + L">", PrefixColor);
}
SetPromptSize(NewPromptSize);
return Result;
Expand Down Expand Up @@ -988,7 +986,7 @@ static bool ProcessFarCommands(const string& Command, execution_context& Executi
{
strOut += L"\nLibraries:\n";

FOR(const auto& i, ComponentsInfo)
for (const auto& i: ComponentsInfo)
{
strOut.append(i).append(1, L'\n');
}
Expand All @@ -1000,7 +998,7 @@ static bool ProcessFarCommands(const string& Command, execution_context& Executi
{
strOut += L"\nPlugins:\n";

FOR(const auto& i, *Global->CtrlObject->Plugins)
for (const auto& i: *Global->CtrlObject->Plugins)
{
strOut.append(i->GetTitle()).append(L", version ").append(i->GetVersionString()).append(1, L'\n');
}
Expand Down Expand Up @@ -1109,7 +1107,7 @@ bool CommandLine::ProcessOSCommands(const string& CmdLine, class execution_conte
&& (n == CmdLine.size() || nullptr != wcschr(L"/ \t", CmdLine[n]) || (bslash && CmdLine[n] == L'\\')));
};

const auto FindKey = [&CmdLine](wchar_t Key) -> bool
const auto FindKey = [&CmdLine](wchar_t Key)
{
const auto FirstSpacePos = CmdLine.find(L' ');
const auto NotSpacePos = CmdLine.find_first_not_of(L' ', FirstSpacePos);
Expand Down Expand Up @@ -1163,7 +1161,7 @@ bool CommandLine::ProcessOSCommands(const string& CmdLine, class execution_conte
{
const os::env::provider::strings EnvStrings;
const auto EnvStringsPtr = EnvStrings.data();
FOR(const auto& i, enum_substrings(EnvStringsPtr))
for (const auto& i: enum_substrings(EnvStringsPtr))
{
if (!StrCmpNI(i.data(), strCmdLine.data(), strCmdLine.size()))
{
Expand Down

0 comments on commit 90fad05

Please sign in to comment.